基于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 相关文章推荐
Breeze 文章管理系统 v1.0.0正式发布
Dec 14 PHP
做了CDN获取用户真实IP的函数代码(PHP与Asp设置方式)
Apr 13 PHP
php实现在线生成条形码示例分享(条形码生成器)
Dec 30 PHP
php生成静态页面的简单示例
Apr 17 PHP
php中$美元符号与Zen Coding冲突问题解决方法分享
May 28 PHP
php生成随机数的三种方法
Sep 10 PHP
php短网址和数字之间相互转换的方法
Mar 13 PHP
Zend Framework连接Mysql数据库实例分析
Mar 19 PHP
PHP检测数据类型的几种方法(总结)
Mar 04 PHP
PHP API接口必备之输出json格式数据示例代码
Jun 27 PHP
浅析PHP反序列化中过滤函数使用不当导致的对象注入问题
Feb 15 PHP
详解phpstorm2020最新破解方法
Sep 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
php zlib压缩和解压缩swf文件的代码
2008/12/30 PHP
php discuz 主题表和回帖表的设计
2009/03/13 PHP
PHP中全局变量global和$GLOBALS[]的区别分析
2012/08/06 PHP
Yii获取当前url和域名的方法
2015/06/08 PHP
php文件上传类完整实例
2016/05/14 PHP
Yii中srbac权限扩展模块工作原理与用法分析
2016/07/14 PHP
漂亮的jquery提示效果(仿腾讯弹出层)
2013/02/05 Javascript
js实现动态添加、删除行、onkeyup表格求和示例
2013/08/18 Javascript
JavaScript eval() 函数介绍及应用示例
2014/07/29 Javascript
在其他地方你学不到的jQuery小贴士和技巧(欢迎收藏)
2016/01/20 Javascript
AngularJS控制器之间的通信方式详解
2016/11/03 Javascript
js中的触发事件对象event.srcElement与event.target详解
2017/03/15 Javascript
详解Angular 自定义结构指令
2017/06/21 Javascript
vue用addRoutes实现动态路由的示例
2017/09/15 Javascript
Puppeteer 爬取动态生成的网页实战
2018/11/14 Javascript
JavaScript实现连连看连线算法
2019/01/05 Javascript
了解JavaScript函数中的默认参数
2019/05/30 Javascript
js实现转动骰子模型
2019/10/24 Javascript
python笔记(2)
2012/10/24 Python
Python Pandas找到缺失值的位置方法
2018/04/12 Python
PyQt5 QSerialPort子线程操作的实现
2018/04/21 Python
[原创]Python入门教程4. 元组基本操作
2018/10/31 Python
python调用虹软2.0第三版的具体使用
2019/02/22 Python
Python自动化运维之Ansible定义主机与组规则操作详解
2019/06/13 Python
python 机器学习之支持向量机非线性回归SVR模型
2019/06/26 Python
python读取ini配置的类封装代码实例
2020/01/08 Python
利用python在excel中画图的实现方法
2020/03/17 Python
django实现模型字段动态choice的操作
2020/04/01 Python
pygame实现弹球游戏
2020/04/14 Python
css3实现的多级渐变下拉菜单导航效果代码
2015/08/31 HTML / CSS
全球游戏Keys和卡片市场:GamesDeal
2018/03/28 全球购物
大学生个人简历中的自我评价
2013/12/27 职场文书
蛋糕店的商业计划书范文
2014/01/27 职场文书
2014年工程工作总结
2014/11/25 职场文书
办公室主任岗位职责
2015/01/31 职场文书
使用Python脚本对GiteePages进行一键部署的使用说明
2021/05/27 Python