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=‘(.*)‘ target=‘_blank‘>(.*)</a><span>#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=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=‘(.*)‘ target=‘_blank‘>(.*)</a><span>/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=‘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