OETY欧亿|Home

135-2716-3909
网站建设资讯详细

PHP使用curl抓取新闻□□□数据

发表日期:2026-07-02 09:02:42   作者来源:李彬   浏览:4330   标签:网站制作    
在一次做网站的时候 ,需要抓取□□一些其他□□□□网站的新□□□闻 ,在这里介□□□□绍一种使丨用curl通过链接·的方式去▽获取这个·页面的所□□□有内容,然后再通□□□□过正则匹□□□配获取需●要的内容。不是所有□□网站都能□□□□抓取需要□□有页面规●律才能去□□□□抓取如下◣图
 

PHP抓取数据


这种有规□□□□律的新闻□□□列表 ,不过新闻□□□□的详情内★容需要再□□□次单独的□□□□去抓取,
代码:
   $url = http://xxxx;  // https://xxxx要抓取的链接 新闻列表
 
        $url=str_replace('&','&',$url);
 
        header("content-type:text/html;charset=utf-8");
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);//除去https里面的s
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);//关闭直接输出
   $ html_data =curl_exec($ch);
        curl_close($ch);//关闭会话
 这里要确认是否抓取到了页面的内容 可以打印出来看一下
 如果没有□□□抓取到 要注意一□□□□下 页面的编□□□码格式 使用iconv()转换一下□□□□内容编码
   // $html_data=iconv('gbk', 'utf-8',$html_data);

       $regular='#<h1id="activity-name">(.*?)</h1>(.*?)<spanid="post-date">(.*?)<span>(.*?)</span>(.*?)<div class="page-content">(.*?)<div class="text">(.*?)</div>#is';
        preg_match_all($regular,$html_data,$connect);//进行正规匹配取得自己要的内容
        //循环取出需要的内容数组
        foreach($connect as $k =>$var){
            if($k==2 || $k==3|| $k==5 || $k==7){
                $b= array_merge(array_filter($connect[$k]));
                $array[]=$b;
            }
        }
得到数据数组后 就可以根据需求去添加数据了
内容详情□□□□需要抓取□□□□就获取到□□□□新闻内容□□□□页的链接 同样使用curl去获取信□□□息
 
要注意的□□□□就是正则□□表达式里□□面的html需要跟页□□面的格式□□□一样, 你可以去□□□□原网站点□□□□右键查看▼源代码,查看格式, 把要抓取□□□□的html复制下来 ,如果还是△有不能抓★取的内容□□□□可能就是□□□格式不正□□□□确 有可能有□□□的地方是□□□□少空格或□□□者多空格, 这个时候♦直接在标□□□□签之间(.*?)。也可以 一点一点□□的匹配 看具体是☆哪个部分□□没有匹配◢到。
 
 OETY欧亿为客户提供网站开发定制服务,网站制作居于LINUX+PHP+MYSQL框架,欢迎客户咨询我们建站热线135-2716-3909
如没特殊注明,文章均为OETY欧亿原创,转载请注明来自https://www.hd-banhen.com/news/5604.html
最新文章
  • 【签约】深圳市众妙中文响应式企业...
    浏览量:4093
  • 疫情后网站建设应该注意哪些问题?
    浏览量:3791
  • 高端网站建设的结构有哪些?
    浏览量:4042
  • 重新设计网站五个步骤
    浏览量:5442
  • 2020年做网站需要知晓的十个数据
    浏览量:3899
  • 企业品牌网站文章内容更新指南:五步
    浏览量:3742