基于PHP的简单采集数据入库程序

 更新时间:2014年07月30日 09:34:33   投稿:hebedich  
前几天有一朋友要我帮做一个采集新闻信息的程序,抽了点时间写了个PHP版本的,随笔记录下。

说到采集,无非就是远程获取信息->提取所需内容->分类存储->读取->展示

也算是简单"小偷程序"的加强版吧

下面是对应核心代码(别拿去做坏事哦^_^)

所要采集的内容是某游戏网站上的公告,如下图:

可先利用file_get_contents和简单正则获取基本页面信息

整理下基本信息,采集入库:

<?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循环数目过大。

轻轻松松数据入库,下篇文章写关于具体url采集信息的过程。

相关文章

  • PHP提取字符串中的手机号正则表达式怎么写

    PHP提取字符串中的手机号正则表达式怎么写

    PHP通过正则表达式提取字符串中的手机号并判断运营商,简单快速方便,能提取多个手机号。下面通过本文实例代码给大家详细介绍,需要的的朋友参考下吧
    2017-07-07
  • discuz加密解密函数使用方法和中文注释

    discuz加密解密函数使用方法和中文注释

    这篇文章主要介绍了discuz加密解密函数的使用方法和中文注释,大家参考使用吧
    2014-01-01
  • CI框架(CodeIgniter)公共模型类定义与用法示例

    CI框架(CodeIgniter)公共模型类定义与用法示例

    这篇文章主要介绍了CI框架(CodeIgniter)公共模型类定义与用法,结合具体实例形式分析了CI框架公共模型类的定义以及基于公共模型类操作数据库的相关实现技巧,需要的朋友可以参考下
    2017-08-08
  • Laravel validate error处理,ajax,json示例

    Laravel validate error处理,ajax,json示例

    今天小编就为大家分享一篇Laravel validate error处理,ajax,json示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-10-10
  • php+iframe实现隐藏无刷新上传文件

    php+iframe实现隐藏无刷新上传文件

    首先ajax不能上传文件,这误导了我有段时间,今晚睡不着就照着说明做了个无刷新上传文件
    2012-02-02
  • PHP中__set()实例用法和基础讲解

    PHP中__set()实例用法和基础讲解

    在本篇文章里小编给大家整理了关于HP中__set()实例用法和基础讲解,对此有需要的朋友们可以学习参考下。
    2019-07-07
  • Laravel框架源码解析之反射的使用详解

    Laravel框架源码解析之反射的使用详解

    这篇文章主要介绍了Laravel框架源码解析之反射的使用,结合实例形式详细分析了Laravel源码解析中反射的基本原理、使用方法及操作注意事项,需要的朋友可以参考下
    2020-05-05
  • php 如何禁用eval() 函数实例详解

    php 如何禁用eval() 函数实例详解

    在php中eval是一个函数并且不能直接禁用了,但eval函数又相当的危险并经常会出现一些问题,今天我们就一起来看看eval函数对数组的操作及php 如何禁用eval() 函数,需要的朋友可以参考下
    2016-12-12
  • 图文详解PHP环境搭建教程

    图文详解PHP环境搭建教程

    这篇文章主要以图文结合的方式为大家详细介绍了PHP环境搭建教程,为大家介绍了php语言的历史、优势,感兴趣的小伙伴们可以参考一下
    2016-07-07
  • PHP并发查询MySQL的实例代码

    PHP并发查询MySQL的实例代码

    本篇文章主要介绍了PHP并发查询MySQL的实例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-08-08

最新评论