前几天有一朋友要我帮做一个采集新闻信息的程序,抽了点时间写了个php版本的,随笔记录下。
说到采集,无非就是远程获取信息->提取所需内容->分类存储->读取->展示
也算是简单"小偷程序"的加强版吧
下面是对应核心代码(别拿去做坏事哦^_^)
所要采集的内容是某游戏网站上的公告,如下图:
立即学习“PHP免费学习笔记(深入)”;

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

对于一个刚进入PHP 开发大门的程序员,最需要的就是一本实用的开发参考书,而不仅仅是各种快速入门的only hello wold。在开发的时候,也要注意到许多技巧和一些“潜规则”。PHP是一门很简单的脚本语言,但是用好它,也要下功夫的。同时,由于PHP 的特性,我一再强调,最NB 的PHP 程序员都不是搞PHP 的。为什么呢?因为PHP 作为一种胶水语言,用于粘合后端 数据库和前端页面,更多需
387
整理下基本信息,采集入库:
<?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在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号