如何用PHP和CURL高效采集新闻列表及详情?

如何用php和curl高效采集新闻列表及详情?

本文将阐述如何利用PHP和cURL高效抓取目标网站的新闻列表和新闻详情,并展示最终结果。 关键在于高效运用cURL获取数据,处理相对路径并提取所需信息。

首先,解决第一个挑战:从列表页(例如,页面1)提取新闻标题和完整URL。 代码示例如下:

<?php$url = 'http://www.xx.com/news'; // 请替换为实际列表页URL$ch = curl_init($url);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36");$html = curl_exec($ch);curl_close($ch);// 使用正则表达式提取新闻标题和链接preg_match_all('/<a href="https://www.php.cn/link/01bebc8e971d09cb90cf5756b340f24c" title=".+?"?>https://www.php.cn/link/01bebc8e971d09cb90cf5756b340f24c</a>/i', $html, $matches);$newslist = [];foreach ($matches[1] as $key => $href) {    $title = $matches[2][$key];    // 处理相对路径    $completeurl = 'http://www.xx.com' . $href; // 将相对路径转换为完整路径    $newslist[] = ['title' => $title, 'url' => $completeurl];}// 打印新闻列表print_r($newslist);?>

登录后复制

本文来自互联网或AI生成,不代表软件指南立场。本站不负任何法律责任。

如若转载请注明出处:http://www.down96.com/tutorials/13144.html

热心网友热心网友
上一篇 2025-04-11 17:11
下一篇 2025-04-11 17:11

相关推荐

本站[软件指南]所有内容来自互联网投稿或AI智能生成,并不代表软件指南的立场。