PHP头条
热点:

基于PHP采集数据入库程序(一),php采集数据入库


前几天有一朋友要我帮做一个采集新闻信息的程序,抽了点时间写了个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数据采集常见技术要领:

1、熟练正则表达式提取数据技术:提取内容关键步骤
2、熟练字符编码转换分析技术:兼容性管理以及数据有效性控制
3、熟练数据出库入库整理技术:对已采集内容的存储管理,包括数据库以及文件和进度
4、发掘数据以及网站爬行技术:分析网站结构,简化爬行手法,提高效率
5、反反采集处理技术:对于存在反采集的目标对象而设计的反反采集技术
6、多服务器并发采集管理技术:提高效率的工作方法
7、数据整理分析技术:查漏验证数据正确性有效性
8、自我身份保护技术:自身信息的保护
 

一段php采集程序 要可以采集列表及内容可以够页,并且入库 有注释最好了

phpquery 用这个,自己再写个入库,
 

www.phpzy.comtrue/php/12756.htmlTechArticle基于PHP采集数据入库程序(一),php采集数据入库 前几天有一朋友要我帮做一个采集新闻信息的程序,抽了点时间写了个PHP版本的,随笔记录下。 说到采集,无非就是远程获取信息-提...

相关文章

相关频道:

PHP之友评论

今天推荐