基于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 相关文章推荐
vBulletin Forum 2.3.xx SQL Injection
Oct 09 PHP
15个小时----从修改程序到自己些程序
Oct 09 PHP
用PHP实现小型站点广告管理
Oct 09 PHP
PHP 第一节 php简介
Apr 28 PHP
php下载文件的代码示例
Jun 29 PHP
php获得文件大小和文件创建时间的方法
Mar 13 PHP
PHP实现的简单对称加密与解密方法实例小结
Aug 28 PHP
PHP设计模式之工厂模式定义与用法详解
Apr 03 PHP
PHP实现的mysql读写分离操作示例
May 22 PHP
PHP中抽象类,接口功能、定义方法示例
Feb 26 PHP
laravel 解决paginate查询多个字段报错的问题
Oct 22 PHP
Laravel框架实现抢红包功能示例
Oct 31 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随机生成福彩双色球号码的2种方法
2013/02/04 PHP
PHP 返回13位时间戳的实现代码
2016/05/13 PHP
php使用gearman进行任务分发操作实例详解
2020/02/26 PHP
PHP数组Key强制类型转换实现原理解析
2020/09/01 PHP
jquery获取div宽度的实现思路与代码
2013/01/13 Javascript
Area 区域实现post提交数据的js写法
2014/04/22 Javascript
jQuery实现统计输入文字个数的方法
2015/03/11 Javascript
JQuery 两种方法解决刚创建的元素遍历不到的问题
2016/04/13 Javascript
BootStrap中Tab页签切换实例代码
2016/05/30 Javascript
JavaScript函数中关于valueOf和toString的理解
2016/06/14 Javascript
Vue.js每天必学之内部响应式原理探究
2016/09/07 Javascript
js原生之焦点图转换加定时器实例
2016/12/12 Javascript
Angular2搜索和重置按钮过场动画
2017/05/24 Javascript
jQuery的Ajax接收java返回数据方法
2018/08/11 jQuery
express如何解决ajax跨域访问session失效问题详解
2019/06/20 Javascript
jquery实现自定义树形表格的方法【自定义树形结构table】
2019/07/12 jQuery
基于Node的Axure文件在线预览的实现代码
2019/08/28 Javascript
VUE中鼠标滚轮使div左右滚动的方法详解
2020/12/14 Vue.js
python条件和循环的使用方法
2013/11/01 Python
python服务器端收发请求的实现代码
2014/09/29 Python
Python实现导出数据生成excel报表的方法示例
2017/07/12 Python
python学习必备知识汇总
2017/09/08 Python
对python指数、幂数拟合curve_fit详解
2018/12/29 Python
解决python tkinter界面卡死的问题
2019/07/17 Python
Python运算符+与+=的方法实例
2021/02/18 Python
CSS实现聊天气泡效果
2020/04/26 HTML / CSS
如何在发生故障的节点上重新安装 SQL Server
2013/03/14 面试题
医学院学生的自我评价分享
2013/11/19 职场文书
数学国培研修感言
2014/02/13 职场文书
《雾凇》教学反思
2014/02/17 职场文书
我们的节日春节活动方案
2014/08/22 职场文书
小学校园广播稿集锦
2014/10/04 职场文书
司机岗位职责
2015/02/04 职场文书
先进工作者个人总结
2015/02/15 职场文书
党员学习中国梦心得体会
2016/01/05 职场文书
2016年大学光棍节活动总结
2016/04/05 职场文书