基于PHP的简单采集数据入库程序


Posted in PHP onJuly 30, 2014

说到采集,无非就是远程获取信息->提取所需内容->分类存储->读取->展示

也算是简单"小偷程序"的加强版吧

下面是对应核心代码(别拿去做坏事哦^_^)

所要采集的内容是某游戏网站上的公告,如下图:

基于PHP的简单采集数据入库程序

可先利用file_get_contents和简单正则获取基本页面信息

基于PHP的简单采集数据入库程序

整理下基本信息,采集入库:

<?php
  include_once("conn.php");


   if($_GET['id']<=8&&$_GET['id']){
     $id=$_GET['id'];
    $conn=file_get_contents("http://www.93moli.com/news_list_4_$id.html");//获取页面内容
  
  $pattern="/<li><a title=\"(.*)\" target=\"_blank\" href=\"(.*)\">/iUs";//正则

  preg_match_all($pattern, $conn, $arr);//匹配内容到arr数组

  //print_r($arr);die;
  
  foreach ($arr[1] as $key => $value) {//二维数组[2]对应id和[1]刚好一样,利用起key
    $url="http://www.93moli.com/".$arr[2][$key];
    $sql="insert into list(title,url) value ('$value', '$url')";
    mysql_query($sql);

    //echo "<a href='content.php?url=http://www.93moli.com/$url'>$value</a>"."<br/>";  
  }
   $id++;
   echo "正在采集URL数据列表$id...请稍后...";
   echo "<script>window.location='list.php?id=$id'</script>";

 }else{
   echo "采集数据结束。";
 }

?>

conn.php是数据库连接文件

list.php是本页面

由于要采集的数据是分页显示的,且页面地址是规律递增,所以我用了js跳转代码,利用id传值控制采集的页数,也避免了for循环数目过大。

基于PHP的简单采集数据入库程序

基于PHP的简单采集数据入库程序

轻轻松松数据入库,下篇文章写关于具体url采集信息的过程。

PHP 相关文章推荐
web方式ftp
Oct 09 PHP
php is_file()和is_dir()用于遍历目录时用法注意事项
Mar 02 PHP
发款php蜘蛛统计插件只要有mysql就可用
Oct 12 PHP
PHP OPP机制和模式简介(抽象类、接口和契约式编程)
Jun 09 PHP
PHP计算百度地图两个GPS坐标之间距离的方法
Jan 09 PHP
54个提高PHP程序运行效率的方法
Jul 19 PHP
隐藏Nginx或Apache以及PHP的版本号的方法
Jan 03 PHP
Zend Framework创建自己的动作助手详解
Mar 05 PHP
一键生成各种尺寸Icon的php脚本(实例)
Feb 08 PHP
PHP基于socket实现的简单客户端和服务端通讯功能示例
Jul 10 PHP
php常用日期时间函数实例小结
Jul 04 PHP
Laravel 微信小程序后端搭建步骤详解
Nov 26 PHP
PHP中设置一个严格30分钟过期Session面试题的4种答案
Jul 30 #PHP
PHP使用Session遇到的一个Permission denied Notice解决办法
Jul 30 #PHP
PHP伪静态Rewrite设置之APACHE篇
Jul 30 #PHP
PHP return语句的另一个作用
Jul 30 #PHP
php mb_substr()函数截取中文字符串应用示例
Jul 29 #PHP
php CI框架插入一条或多条sql记录示例
Jul 29 #PHP
两种设置php载入页面时编码的方法
Jul 29 #PHP
You might like
php使用Smarty的相关注意事项及访问变量的几种方式
2011/12/08 PHP
探讨如何在php168_cms中提取验证码
2013/06/08 PHP
PHP生成器简单实例
2015/05/13 PHP
php过滤所有的空白字符(空格、全角空格、换行等)
2015/10/27 PHP
优化WordPress的Google字体以加速国内服务器上的运行
2015/11/24 PHP
PHP接口继承及接口多继承原理与实现方法详解
2017/10/18 PHP
TP5框架实现的数据库备份功能示例
2020/04/05 PHP
基于PHP实现用户在线状态检测
2020/11/10 PHP
让firefox支持IE的一些方法的javascript扩展函数代码
2010/01/02 Javascript
使用JQuery进行跨域请求
2010/01/25 Javascript
jcarousellite.js 基于Jquery的图片无缝滚动插件
2010/12/30 Javascript
jquery鼠标滑过提示title具体实现代码
2013/08/06 Javascript
jQuery多级弹出菜单插件ZoneMenu
2014/12/18 Javascript
js实现表单多按钮提交action的处理方法
2015/10/24 Javascript
JS上传组件FileUpload自定义模板的使用方法
2016/05/10 Javascript
Bootstrap弹出框(modal)垂直居中的问题及解决方案详解
2016/06/12 Javascript
基于AngularJS前端云组件最佳实践
2016/10/20 Javascript
Vue.js组件tree实现省市多级联动
2016/12/02 Javascript
javaScript嗅探执行神器-sniffer.js
2017/02/14 Javascript
jstree单选功能的实现方法
2017/06/07 Javascript
nodejs基于mssql模块连接sqlserver数据库的简单封装操作示例
2018/01/05 NodeJs
深入理解Vue Computed计算属性原理
2018/05/29 Javascript
vue移动端下拉刷新和上拉加载的实现代码
2018/09/08 Javascript
微信小程序实现的3d轮播图效果示例【基于swiper组件】
2018/12/11 Javascript
微信小程序实现一个简单swiper代码实例
2019/12/30 Javascript
[02:44]完美大师赛主赛事淘汰赛第二日观众采访
2017/11/24 DOTA
对python3 urllib包与http包的使用详解
2018/05/10 Python
Python+appium框架原生代码实现App自动化测试详解
2020/03/06 Python
专门出售各种儿童读物的网站:Put Me In The Story
2016/08/07 全球购物
英国健身仓库:Bodybuilding Warehouse
2019/03/06 全球购物
李维斯法国官网:Levi’s法国
2019/07/13 全球购物
校运会口号
2014/06/18 职场文书
离职证明标准格式
2014/09/15 职场文书
2015年毕业生自我鉴定模板
2014/09/19 职场文书
2014年环境卫生工作总结
2014/11/24 职场文书
学校食品安全责任书
2015/01/29 职场文书