基于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 相关文章推荐
PHP脚本的10个技巧(7)
Oct 09 PHP
如何跨站抓取别的站点的页面的补充
Oct 09 PHP
php下获取Discuz论坛登录用户名、用户组、用户ID等信息的实现代码
Dec 29 PHP
thinkphp学习笔记之多表查询
Jul 28 PHP
php使用fopen创建utf8编码文件的方法
Oct 31 PHP
PHP随机生成信用卡卡号的方法
Mar 23 PHP
PHP实现加强版加密解密类实例
Jul 29 PHP
php基础教程
Aug 26 PHP
PHP使用Pthread实现的多线程操作实例
Nov 14 PHP
php微信开发自定义菜单
Aug 27 PHP
PHP读取文本文件并逐行输出该行使用最多的字符与对应次数的方法
Nov 25 PHP
thinkphp 手机号和用户名同时登录
Jan 20 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中养成7个面向对象的好习惯
2010/07/17 PHP
PHP获取当前页面完整URL的实现代码
2013/06/10 PHP
对于PHP 5.4 你必须要知道的
2013/08/07 PHP
C/S和B/S两种架构区别与优缺点分析
2014/10/23 PHP
php字符比较函数similar_text、strnatcmp与strcasecmp用法分析
2014/11/18 PHP
ThinkPHP中redirect用法分析
2014/12/05 PHP
PHP实现加密文本文件并限制特定页面的存取的效果
2016/10/21 PHP
浅谈php://filter的妙用
2019/03/05 PHP
解决PHP curl或file_get_contents下载图片损坏或无法打开的问题
2019/10/11 PHP
laravel框架之数据库查出来的对象实现转化为数组
2019/10/23 PHP
Jquery模仿Baidu、Google搜索时自动补充搜索结果提示
2013/12/26 Javascript
百度移动版的url编码解码示例
2014/04/29 Javascript
javascript实现简单的二级联动
2015/03/19 Javascript
谈一谈bootstrap响应式布局
2016/05/23 Javascript
EasyUI修改DateBox和DateTimeBox的默认日期格式示例
2017/01/18 Javascript
js中new一个对象的过程
2017/02/20 Javascript
从零开始学习Node.js系列教程之设置HTTP头的方法示例
2017/04/13 Javascript
关于 angularJS的一些用法
2017/11/29 Javascript
深入理解Vue router的部分高级用法
2018/08/15 Javascript
vue实现密码显示与隐藏按钮的自定义组件功能
2019/04/23 Javascript
javascript设计模式 ? 装饰模式原理与应用实例分析
2020/04/14 Javascript
Python中转换角度为弧度的radians()方法
2015/05/18 Python
为什么入门大数据选择Python而不是Java?
2018/03/07 Python
Python如何把十进制数转换成ip地址
2020/05/25 Python
Python3.7安装pyaudio教程解析
2020/07/24 Python
python缩进长度是否统一
2020/08/02 Python
python实现自动打卡的示例代码
2020/10/10 Python
利用python进行文件操作
2020/12/04 Python
学生评语大全
2014/04/18 职场文书
综艺节目策划方案
2014/06/13 职场文书
经营理念标语
2014/06/21 职场文书
2014感恩节演讲稿大全
2014/10/11 职场文书
教师年度考核个人总结
2015/02/12 职场文书
隐形的翅膀观后感
2015/06/10 职场文书
校运会加油稿大全
2015/07/22 职场文书
nginx之内存池的实现
2022/06/28 Servers