基于PHP的简单采集数据入库程序【续篇】


Posted in PHP onJuly 30, 2014

在上篇文章中,我们已经采集新闻信息页的列表数据,接下来要做的操作就是从数据库中读取所需要采集的URL,进行页面抓取就行

新建一个content表

不过需要注意的一点是,不能再采用采集URL这种id递增的方法去采集,因为数据表中可能出现id断续,比如id=9,id=11,当采集到id=10的时候,URL是空白的,这样可能会导致采集到了空字段。

这里用到的一个技巧是数据库的查询语句,在我们采集完第一条数据的时候,判断数据库里是否还有大于此id的id编号,若有,读取一条,查询信息重复上面的工作。

具体代码如下:

<?php
  
  include_once("conn.php");
  $id=(int)$_GET['id'];
  $sql="select * from list where id=$id";
  $result=mysql_query($sql);
  $row=mysql_fetch_array($result);//取得对应的url地址
  $content=file_get_contents($row['url']);
  $pattern="/<dd class=\"dataWrap\">(.*)<\/dd>/iUs";
  preg_match($pattern, $content,$info);//获取内容存放info
  echo $title=$row[1]."<br/>";
  echo $content=$info[0]."<hr/>";

  //插入数据库
  $add="insert into content(title,content) value('$title','$content')";
  mysql_query($add);

  $sql2="select * from list where id>$id order by id asc limit 1";
  $result2=mysql_query($sql2);
  $row2=mysql_fetch_array($result2);//取得对应的url地址
  if($row2['id']){
    echo "<script>window.location='content.php?id=$row2[0]'</script>";
  }

?>

基于PHP的简单采集数据入库程序【续篇】

这样子我们所要的新闻内容就采集入库了,接下来只需要对数据的一些样式进行整理就行了。

PHP 相关文章推荐
谈谈PHP的输入输出流
Feb 14 PHP
PHP 获取目录下的图片并随机显示的代码
Dec 28 PHP
创建配置文件 用PHP写出自己的BLOG系统 2
Apr 12 PHP
drupal 代码实现URL重写
May 04 PHP
php入门学习知识点八 PHP中for循环基本应用之九九乘法口绝表
Jul 14 PHP
PHP pathinfo()获得文件的路径、名称等信息说明
Sep 13 PHP
php标签云的实现代码
Oct 10 PHP
详解PHP中instanceof关键字及instanceof关键字有什么作用
Nov 05 PHP
zend framework重定向方法小结
May 28 PHP
Ubuntu server 11.04安装memcache及php使用memcache来存储session的方法
May 31 PHP
php把时间戳转换成多少时间之前函数的实例
Nov 16 PHP
CodeIgniter框架钩子机制实现方法【hooks类】
Aug 21 PHP
基于PHP的简单采集数据入库程序
Jul 30 #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
You might like
php时间不正确的解决方法
2008/04/09 PHP
解决Codeigniter不能上传rar和zip压缩包问题
2014/03/07 PHP
PHP实现单例模式最安全的做法
2014/06/13 PHP
php 微信公众平台开发模式实现多客服的实例代码
2016/11/07 PHP
php的lavarel框架中join和orWhere的用法
2020/12/28 PHP
jscript之Open an Excel Spreadsheet
2007/06/13 Javascript
jQuery 源码分析笔记(3) Deferred机制
2011/06/19 Javascript
javascript中获取下个月一号,是星期几
2012/06/01 Javascript
jQuery获取Radio,CheckBox选择的Value值(示例代码)
2013/12/12 Javascript
jQuery选择器源码解读(四):tokenize方法的Expr.preFilter
2015/03/31 Javascript
JS仿淘宝实现的简单滑动门效果代码
2015/10/14 Javascript
bootstrap轮播图示例代码分享
2017/05/17 Javascript
如何开发出更好的JavaScript模块
2017/12/22 Javascript
详解js正则表达式验证时间格式xxxx-xx-xx形式
2018/02/09 Javascript
bootstrap treeview 树形菜单带复选框及级联选择功能
2018/06/08 Javascript
深入理解Vue父子组件生命周期执行顺序及钩子函数
2018/08/12 Javascript
使用canvas实现一个vue弹幕组件功能
2018/11/30 Javascript
Vue触发input选取文件点击事件操作
2020/08/07 Javascript
Ubuntu下创建虚拟独立的Python环境全过程
2017/02/10 Python
Python编程把二叉树打印成多行代码
2018/01/04 Python
pip install urllib2不能安装的解决方法
2018/06/12 Python
在python中使用xlrd获取合并单元格的方法
2018/12/26 Python
Pandas 重塑(stack)和轴向旋转(pivot)的实现
2019/07/22 Python
微软俄罗斯官方网站:Microsoft俄罗斯
2016/09/18 全球购物
新西兰杂志订阅:isubscribe
2019/08/26 全球购物
哈曼俄罗斯官方网上商店:Harman.club
2020/07/24 全球购物
CHRONEXT英国:您的首选奢华腕表目的地
2020/03/30 全球购物
银行服务感言
2014/03/01 职场文书
竞聘书格式及范文
2014/03/31 职场文书
小区文明倡议书
2014/05/16 职场文书
《中国梦我的梦》中学生演讲稿
2014/08/20 职场文书
社区党员公开承诺书
2014/08/30 职场文书
网上祭英烈活动总结
2015/02/04 职场文书
村党组织公开承诺书
2015/04/30 职场文书
医院员工辞职信范文
2015/05/12 职场文书
Redis高并发防止秒杀超卖实战源码解决方案
2021/11/01 Redis