php 采集小程序,做采集的必看
<?php
//调用方法 :http://localhost/2.php?id=1 (自动采集1-8的列表)
header("Content-type:text/html;charset=utf-8");
$con =mysql_connect("localhost", "root", "huweishen.com") or die("数据库链接错误");
mysql_select_db("liuyan", $con);
mysql_query("set names "utf8"");
function preg_substr($start, $end, $str) // 正则截取函数
{
$temp = preg_split($start, $str);
$content = preg_split($end, $temp[1]);
return $content[0];
}
function str_substr($start, $end, $str) // 字符串截取函数
{
$temp = explode($start, $str, 2);
$content = explode($end, $temp[1], 2);
return $content[0];
}
// ---------------- 使用实例 ----------------
if($_GET["id"]<=8&&$_GET["id"]){
$id=$_GET["id"];
$url = "http://www.037c.com/New/list_5_$id.html"; //目标站
$fp = fopen($url, "r") or die("超时");
$fcontents = file_get_contents($url);
$pattern="/</span><a href="(.*)" title="(.*)" target="_blank">/iUs";//正则
preg_match_all($pattern, $fcontents, $arr);
//print_r($arr);
foreach($arr[1] as $k=>$url)
{
$title = iconv("GB2312", "UTF-8", addslashes($arr[2][$k]));
// echo $title;
// echo $url;
$str = iconv("GB2312","UTF-8", file_get_contents($url));
$author = preg_substr("/作者:/", "/<//", $str); // 通过正则提取作者
$content = str_substr("<div class="wltg">", "</div>", $str); //通过字符串提取标题
$sql = "INSERT INTO `caiji` (`title`, `url` , `content`, `author` ) VALUES ("$title", "$url" , "$content" , "$author")";
// echo $sql."<br/>";
mysql_query($sql);
}
$id++;
echo "正在采集URL数据列表$id...请稍后...";
echo "<script>window.location="2.php?id=$id"</script>";
}
else{
echo "采集数据结束。";
}
?>
其中 title 设置唯一,可以防止重复采集,很好的的一个php采集小程序,作者:风云无忌
声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。
- 上一篇: implode 和explode 的区别用法
- 下一篇: php 采集函数,很好的php采集函数
