加载页面以获取cookie并同时读取源代码

时间:2012-06-28 15:33:56

标签: php javascript

我正在寻找3天的答案,我找不到一个因为我总能找到一些障碍。

我需要加载一个网页(原因是接受一个cookie),然后同时阅读新页面的源代码而不再打它。原因是页面是动态的,因此内容会发生变化 我尝试使用iFrame(document.body.innerHTML)尝试这样做但事实上这些页面在不同的服务器上运行我遇到了跨站点脚本问题。
我也尝试使用get_contents编写php脚本,但这不允许将cookie存储在我的本地。

这让我发疯了......任何建议都会很有用!需要使用PHP或Javascript,以及任何其他建议也将有用。

2 个答案:

答案 0 :(得分:0)

当您在页面document.body.innerHTML时,会为您提供页面来源。

编辑:我没有意识到你正在加载它。请参阅此SO question

答案 1 :(得分:0)

可以使用PHP中的cURL来完成。

粗略实施:

$ch = curl_init('http://www.google.com/');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 1);
$data = curl_exec($ch);
preg_match('/^Set-Cookie: (.*?);/m', $data, $cookies);

var_dump($cookies);
var_dump($data);

$data将包含整个回复,因此我们需要自行解析Cookie标头。

如果您的系统可以使用,HttpRequest可以让您更轻松。