基于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 相关文章推荐
一个分页的论坛
Oct 09 PHP
ThinkPHP php 框架学习笔记
Oct 30 PHP
php笔记之:有规律大文件的读取与写入的分析
Apr 26 PHP
基于Zend的Config机制的应用分析
May 02 PHP
解析PHP中ob_start()函数的用法
Jun 24 PHP
PHP远程采集图片详细教程
Jul 01 PHP
php实现的zip文件内容比较类
Sep 24 PHP
PHP explode()函数的几个应用和implode()函数有什么区别
Nov 05 PHP
phpStudy访问速度慢和启动失败的解决办法
Nov 19 PHP
PHP常用文件操作函数和简单实例分析
Jun 03 PHP
如何运行/调试你的PHP代码
Oct 23 PHP
Cookie跨域问题解决方案代码示例
Nov 24 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
推荐5款跨平台的PHP编辑器
2014/12/25 PHP
PHP环境搭建的详细步骤
2016/06/30 PHP
Mootools 1.2教程 Fx.Tween的使用
2009/09/15 Javascript
网页前台通过js非法字符过滤代码(骂人的话等等)
2010/05/26 Javascript
JS嵌套函数调用上下文的问题解决
2014/03/26 Javascript
Jquery给基本控件的取值、赋值示例
2014/05/23 Javascript
使用focus方法让光标默认停留在INPUT框
2014/07/29 Javascript
Node.js中使用mongoskin操作mongoDB实例
2014/09/28 Javascript
Jquery插件easyUi实现表单验证示例
2015/12/15 Javascript
jQuery时间插件jquery.clock.js用法实例(5个示例)
2016/01/14 Javascript
JS匿名函数类生成方式实例分析
2016/11/26 Javascript
jquery validation验证表单插件
2017/01/07 Javascript
Vue.Js中的$watch()方法总结
2017/03/23 Javascript
vue使用Axios做ajax请求详解
2017/06/07 Javascript
vue2 router 动态传参,多个参数的实例
2017/11/10 Javascript
Vue官网todoMVC示例代码
2018/01/29 Javascript
JavaScript实现点击出现图片并统计点击次数功能示例
2018/07/23 Javascript
React Component存在的几种形式详解
2018/11/06 Javascript
typescript配置alias的详细步骤
2020/08/12 Javascript
JavaScript实现简单动态表格
2020/12/02 Javascript
[43:47]完美世界DOTA2联赛PWL S3 LBZS vs Phoenix 第一场 12.09
2020/12/11 DOTA
python创建和删除目录的方法
2015/04/29 Python
Python检测一个对象是否为字符串类的方法
2015/05/21 Python
Anaconda3+tensorflow2.0.0+PyCharm安装与环境搭建(图文)
2020/02/18 Python
python 实现在无序数组中找到中位数方法
2020/03/03 Python
Python getattr()函数使用方法代码实例
2020/08/10 Python
基于python的opencv图像处理实现对斑马线的检测示例
2020/11/29 Python
Python+Opencv实现把图片、视频互转的示例
2020/12/17 Python
利用css3实现的简单的鼠标悬停按钮
2014/11/04 HTML / CSS
Gap加拿大官网:Gap Canada
2017/08/24 全球购物
青年创业培训欢迎词
2014/01/08 职场文书
初中同学聚会邀请函
2014/02/03 职场文书
安全生产实施方案
2014/02/23 职场文书
党员公开承诺事项
2014/03/25 职场文书
终止合同协议书
2014/04/17 职场文书
八年级作文之友谊
2019/12/02 职场文书