php抓取网页程序(如何使用PHP网页抓取网页?格式为你解答!)
优采云 发布时间: 2021-10-18 23:20php抓取网页程序(如何使用PHP网页抓取网页?格式为你解答!)
在本文中,我将向您展示如何使用 PHP 来抓取网页。本教程的视频版本可在 YouTube 上获得,网址为
(如果您喜欢以视频格式学习)。我个人喜欢阅读文章 的文章,因为它往往花费更少的时间,因为您可以浏览...选择最适合您的格式!
本文假设您对 PHP 和编程概念有基本的了解,并且可以访问能够运行 PHP 的服务器。如果您无法访问能够运行 PHP 的服务器,您可以通过观看我的安装视频在 Windows 10 上安装 WAMP。在某种程度上,爬行涉及网页的逆向工程,因此有助于熟悉 HTML。
尽管还有其他方法可以使用 PHP 抓取网页,但本文将重点介绍一个简单的 HTML DOM 解析器。我选择使用这个库是因为它是一个经验丰富的库,易于使用,并且文档非常好。
安装库
您需要做的第一件事是从 SourceForge 下载抓取库。你可以去
, 然后单击“从 SourceForge 下载最新版本”。
从 SourceForge 下载库后,解压缩压缩文件夹。然后将“simple_html_dom.php”文件移动到将要构建网络爬虫的文件夹中。
编写剪切和粘贴代码
现在您已经安装了该库,您可以开始编写我们的抓取代码。
现在您可以访问抓取库,您可以使用 file_get_html 函数从 URL 创建一个 DOM 对象。
然后,您可以通过调用 find 方法并传入要捕获的元素的标签名称,从该 DOM 对象中提取特定元素。如果只想获取特定标签的单个实例,也可以传递索引。如果要获取标签数组,请不要传递索引。
除了根据标签名称选择元素外,您还可以根据类或 ID 选择元素。
$html = file_get_html('https://google.com');
$array_of_hidden_divs = $html->find('div[class="hidden"]');
$array_of_thumbnails = $html->find('img[id="thumbnail"]');
find 方法返回一个 DOM 对象。这意味着我们可以自己调用 find 方法来获取子元素。
$html = file_get_html('https://google.com');
$ul = $html->find('ul',0);
$array_of_li = $ul->find('li');
# This is the same as above, but in a single line
$array_of_li = $html->find('ul',0)->find('li');
您可以提取某些数据,例如元素的文本、锚标记的超链接引用或图像的来源。
$html = file_get_html('https://google.com');
$button_text = $html->find('button',0)->plaintext;
$anchor_href = $html->find('a',0)->href;
$image_source = $html->find('img',0)->src;
我希望这可以帮助您满足您的 PHP Web Scraping 需求。如果您需要任何说明,请随时提出问题。我强烈建议您阅读文档。
从: