加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > PHP > 正文

php 文章采集正则代码

发布时间:2020-05-24 22:32:46 所属栏目:PHP 来源:互联网
导读:php 文章采集代码主要是应用了正则表达式。

<div class="codetitle"><a style="CURSOR: pointer" data="82276" class="copybut" id="copybut82276" onclick="doCopy('code82276')"> 代码如下:<div class="codebody" id="code82276">
//采集html
function getwebcontent($url){
$ch = curl_init();
$timeout = 10;
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout);
curl_setopt ($ch,CURLOPT_FOLLOWLOCATION,1);
$contents = trim(curl_exec($ch));
curl_close($ch);
return $contents;
}
//获得标题和url
$string =
getwebcontent('http://www.***.com/learn/zhunbeihuaiyun/jijibeiyun/2');
//正则匹配

  • 获取标题和地址
    preg_match_all ("/
  • <a href="/learn/article/(.)">(.)</a>/",$string,$out,PREG_SET_ORDER);
    foreach($out as $key => $value){
    $article['title'][] = $out[$key][2];
    $article['link'][] = "http://www.***.com/learn/article/".$out[$key][1];
    }
    //根据url获取文章内容
    foreach($article['link'] as $key=>$value){
    $content_html = getwebcontent($article['link'][$key]);
    preg_match("/
    [s|S]*?</div>/",$content_html,$matches);
    $article[content][$key] = $matches[0]; }
    //不转码还真不能保存成文件
    foreach($article[title] as $key=>$value){
    $article[title][$key] = iconv('utf-8','gbk',$value);//转码
    }
    //存入文件
    $num = count($article['title']);
    for($i=0; $i<$num; $i++){
    file_put_contents("{$article[title][$i]}.txt",$article['content'][$i]);
    }
    ?>

    (编辑:安卓应用网)

    【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    • 推荐文章
        热点阅读