从我读过的所有内容来看,这似乎是不可能的。但这是我的情景:
我需要抓一张包含待售房屋信息的表格内容。该页面没有密码保护或任何内容,但您首先必须单击上一页上的“我同意”链接,以便设置cookie,表示您同意该内容可能不是100%准确。然后,您才会显示数据。使用php / jquery / javascript有什么方法可以实现这个目的吗?我知道你不能创建一个iframe,因为它是跨域的。我也无法访问其他网站。
感谢您的回答,因为我并不期待任何积极的事情。 :)非常感谢你能告诉我如何做到这一点。 :d
答案 0 :(得分:3)
使用服务器端脚本(使用cURL的PHP)来抓取网站并返回所需的信息。确保使用代表“我同意”cookie的请求设置相应的HTTP标头。
样品:
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://www.example.com/');
curl_setopt($ch, CURLOPT_COOKIE, 'I_Agree=1');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$responseBody = curl_exec($ch);
curl_close($ch);
// Read the information you need from $responseBody and return it as response body
?>
现在,您可以通过调用上面的服务器端脚本来访问您网站上的信息。有关如何使用cURL的详细信息,请查看documentation。
答案 1 :(得分:1)
CURL可以根据您设置的选项存储或调用文件中的Cookie。这是“cookiejar”的例子:
http://curl.haxx.se/libcurl/php/examples/cookiejar.html
查看CURLOPT_COOKIEJAR和CURLOPT_COOKIEFILE选项