基于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 文件类型判断代码
Mar 13 PHP
PHP用mysql数据库存储session的代码
Mar 05 PHP
PHP及Zend Engine的线程安全模型分析
Nov 10 PHP
解析PHP提交后跳转
Jun 23 PHP
php出现内存位置访问无效错误问题解决方法
Aug 16 PHP
PHP自定session保存路径及删除、注销与写入的方法
Nov 18 PHP
ThinkPHP框架设计及扩展详解
Nov 25 PHP
php文件夹的创建与删除方法
Jan 24 PHP
php常用字符函数实例小结
Dec 29 PHP
php语言注释,单行注释和多行注释
Jan 21 PHP
PHP的RSA加密解密方法以及开发接口使用
Feb 11 PHP
php开发最强大的IDE编辑的phpstorm 2020.2配置Xdebug调试的详细教程
Aug 17 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
Thinkphp5框架ajax接口实现方法分析
2019/08/28 PHP
参考:关于Javascript中实现暂停的几篇文章
2007/03/04 Javascript
js prototype截取字符串函数
2010/04/01 Javascript
jQuery插件开发精品教程让你的jQuery提升一个台阶
2016/01/27 Javascript
JS实现的适合做faq或menu滑动效果示例
2016/11/17 Javascript
js实现显示手机号码效果
2017/03/09 Javascript
ES5 ES6中Array对象去除重复项的方法总结
2017/04/27 Javascript
解决vue里碰到 $refs 的问题的方法
2017/07/13 Javascript
vue component组件使用方法详解
2017/07/14 Javascript
vue-devtools的安装步骤
2018/04/23 Javascript
为什么说JavaScript预解释是一种毫无节操的机制详析
2018/11/18 Javascript
初探Vue3.0 中的一大亮点Proxy的使用
2018/12/06 Javascript
详解微信小程序获取当前时间及日期的方法
2019/04/28 Javascript
JavaScript获取当前url路径过程解析
2019/12/27 Javascript
vue2.0实现列表数据增加和删除
2020/06/17 Javascript
基于js实现的图片拖拽排序源码实例
2020/11/04 Javascript
python getopt 参数处理小示例
2009/06/09 Python
python写的一个文本编辑器
2014/01/23 Python
实例解析Python中的__new__特殊方法
2016/06/02 Python
Python使用asyncio包处理并发详解
2017/09/09 Python
使用python进行波形及频谱绘制的方法
2019/06/17 Python
Python实现打包成库供别的模块调用
2020/07/13 Python
python日志通过不同的等级打印不同的颜色(示例代码)
2021/01/13 Python
六一儿童节主持词
2014/03/21 职场文书
《会走路的树》教后反思
2014/04/19 职场文书
环境保护建议书
2014/08/26 职场文书
2014年质量工作总结
2014/11/22 职场文书
市场总监岗位职责
2015/02/11 职场文书
行政主管岗位职责范本
2015/04/09 职场文书
干部考核工作总结2015
2015/07/24 职场文书
详解MySQL的半同步
2021/04/22 MySQL
pytorch实现手写数字图片识别
2021/05/20 Python
浅析Python实现DFA算法
2021/06/26 Python
Python如何快速找到多个字典中的公共键(key)
2022/04/29 Python
使用CSS实现黑白格背景效果
2022/06/01 HTML / CSS
python playwrigh框架入门安装使用
2022/07/23 Python