基于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 相关文章推荐
JAVA/JSP学习系列之二
Oct 09 PHP
Apache+php+mysql在windows下的安装与配置图解(最新版)
Nov 30 PHP
PHP排序之二维数组的按照字母排序实现代码
Aug 13 PHP
thinkphp 多表 事务详解
Jun 17 PHP
php制作中间带自己定义图片二维码的方法
Jan 27 PHP
php求正负数数组中连续元素最大值示例
Apr 11 PHP
PHP实例分享判断客户端是否使用代理服务器及其匿名级别
Jun 04 PHP
PHP中的reflection反射机制测试例子
Aug 05 PHP
PHP的Yii框架中创建视图和渲染视图的方法详解
Mar 29 PHP
yii2-GridView在开发中常用的功能及技巧总结
Jan 07 PHP
php函数式编程简单示例
Aug 08 PHP
php5.6.x到php7.0.x特性小结
Aug 17 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 一个页面执行时间类代码
2010/03/05 PHP
探讨如何在php168_cms中提取验证码
2013/06/08 PHP
PHP将XML转数组过程详解
2013/11/13 PHP
php实现快速对二维数组某一列进行组装的方法小结
2019/12/04 PHP
JS返回上一页实例代码通过图片和按钮分别实现
2013/08/16 Javascript
js 判断js函数、变量是否存在的简单示例代码
2014/03/04 Javascript
javascript设计模式之工厂模式示例讲解
2014/03/04 Javascript
JQuery拖动表头边框线调整表格列宽效果代码
2014/09/10 Javascript
JS+CSS实现Li列表隔行换色效果的方法
2015/02/16 Javascript
深入理解JavaScript中的call、apply、bind方法的区别
2016/05/30 Javascript
jQuery+ajax简单实现文件上传的方法
2016/06/03 Javascript
基于jQuery实现仿微博发布框字数提示
2016/07/27 Javascript
div中文字内容溢出常见的解决方法
2017/03/16 Javascript
Angular 4.x 路由快速入门学习
2017/05/03 Javascript
AngularJS使用$http配置对象方式与服务端交互方法
2018/08/13 Javascript
微信小程序登录session的使用
2019/03/17 Javascript
对layui数据表格动态cols(字段)动态变化详解
2019/10/25 Javascript
微信小程序实现通讯录列表展开收起
2020/11/18 Javascript
[01:21:58]守擂赛DOTA2第一周决赛
2020/04/22 DOTA
python实现颜色空间转换程序(Tkinter)
2015/12/31 Python
python中import学习备忘笔记
2017/01/24 Python
python+selenium+chromedriver实现爬虫示例代码
2020/04/10 Python
keras实现图像预处理并生成一个generator的案例
2020/06/17 Python
巴西购物网站:Submarino
2020/01/19 全球购物
介绍一下javax.servlet.Servlet接口及其主要方法
2015/11/30 面试题
文秘专业个人求职信
2013/12/22 职场文书
求职意向书范文
2014/04/01 职场文书
任命书格式
2014/06/05 职场文书
会议接待欢迎标语
2014/10/08 职场文书
开票员岗位职责
2015/02/12 职场文书
安全生产先进个人总结
2015/02/15 职场文书
解除合同协议书范本
2016/03/21 职场文书
成功的商业计划书这样写才最靠谱
2019/07/12 职场文书
优秀范文:读《红岩》有感3篇
2019/10/14 职场文书
python爬虫之爬取笔趣阁小说
2021/04/22 Python
如何设计高效合理的MySQL查询语句
2021/05/26 MySQL