首页 > 代码库 > 我的php学习笔记:php通用采集程序

我的php学习笔记:php通用采集程序

php采集程序构建基本步骤:

采集程序是什么?获取远程数据(文字、图片、图片)并快速保存到本地或指定地址。

如天气预报(小偷程序):

远程获取--》替换内容--》展示给用户

如实时更新的新闻(采集内容):

远程获取--》提取内容--》分类存储--》读取内容---》展示内容



*************************

设计PHP采集入库UML

      列表正则:

      终端正则:

**************************

file_get_contents()获取远程页面内容

preg_match_all()匹配列表

preg_match()匹配终端

preg_replace()  :过滤终端

**************************

新建一个列表文件:lb.php

echo $con=file_get_cotents($_GET[url]);

$preg ="#<h1><a href=http://www.mamicode.com/‘(.*)‘ target=‘_blank‘>(.*)#iUs";


pg_match_all($preg,$conn,$arr);

foreach($arr[1] as $id=>$v){

  echo $v." "arr[2][$id]."<br>";

}


新建vi。php获取标题


vi.php


     $con=file_get_contents();

     $preg="<title>(.*)</title>/iUs";//大小写不敏感,防止贪婪匹配,防止换行

     echo zz($preg,$con);

    function zz($preg,$con,$num=1){

           preg_match($preg,$con,$arr);

  return $arr[$num];

     }

     

     

     echo $arr[1];//获取标题

     echo "<a href=http://www.mamicode.com/vi.php?url=".$v.">".arr[2][$id]."<br>";

======================================

php100:83:采集程序


lb.php

<?php

if($_GET[id]){

   $con=file_get_cotents($_GET[url].$_GET[id]."shtml");

   $preg ="/<h1><a href=http://www.mamicode.com/‘(.*)‘ target=‘_blank‘>(.*)/iUs";


   perg_match_all($preg,$conn,$arr);

    foreach($arr[1] as $id=>$v){

     echo $v." "arr[2][$id]."<br>";

}

$_GET[id]++;


echo "<script>location.href=http://www.mamicode.com/‘lb.php?id=‘.$_GET[id]."</script>";

}

?>


http://www.xinhuanet.com/finance/tzxx.htm


===============================================================

操作步骤:

1.新建一个数据库caiji,tep_url表,id,title,content,11 ,100,150

2.新建一个conn.php,插入的语句可以通过phpmyadmin插入一个语句简单的获得

3.新建一个vi.php

4.单条入库获取下一条。


临时的路径列表:

完善我的入库表。



假设删删除了其中的一条Id值,怎么办?删除了第9条!

多加一条语句

 $sql2="select * from tmp_url where id>‘$gid‘order by id asc limit 1 


本文出自 “微微张” 博客,请务必保留此出处http://raojiadashaoye.blog.51cto.com/7167615/1426141