-1

我听说可以在 windows 服务器上使用 PHP(可能高于 6.0)来捕获网页。

我得到了一些示例代码并进行了测试。但是没有代码可以正确执行。

如果您知道一些捕获网页的正确方法,将其保存在 Web 应用程序中的图像文件?

请教我。

4

3 回答 3

5

你可以使用 browsershots api http://browsershots.org/

使用 xml-rpc 界面,您实际上可以使用几乎任何语言来访问它。

http://api.browsershots.org/xmlrpc/

于 2009-07-03T06:54:54.213 回答
1

尽管您要求提供 PHP 解决方案,但我想与 Perl 分享另一个解决方案。WWW::Mechanize以及LWP::UserAgentHTML::Parser可以帮助进行屏幕抓取。

一些文件供参考:

于 2009-07-03T06:35:06.140 回答
-2

下载网页的 html 通常称为屏幕抓取。如果您希望程序从给定页面中提取数据,这将很有用。请求 HTTP 资源的最简单方法是使用名为cURL的工具。cURL 是作为一个独立的 unix 工具出现的,但是有一些库可以在几乎所有的编程语言中使用它。要从 Unix 命令行类型捕获此页面:

curl http://stackoverflow.com/questions/1077970/in-any-languages-can-i-capture-a-webpageno-install-no-activex-if-i-can-plz

在 PHP 中,你可以这样做:

<?php 
$ch = curl_init() or die(curl_error()); 
curl_setopt($ch, CURLOPT_URL,"http://stackoverflow.com/questions/1077970/in-any-languages-can-i-capture-a-webpageno-install-no-activex-if-i-can-plz"); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
$data1=curl_exec($ch) or die(curl_error()); 
echo "<font color=black face=verdana size=3>".$data1."</font>"; 
echo curl_error($ch); 
curl_close($ch); 
?>

现在,在复制整个网站之前,您应该检查他们的 robots.txt 文件,看看他们是否允许机器人爬取他们的网站,并且您可能需要检查是否有可用的 API 允许您在没有 HTML 的情况下检索数据。

于 2009-07-03T06:34:52.987 回答