来自wget的意外结果

时间:2015-07-07 10:26:38

标签: perl wget

我从网址收到了奇怪的结果: http://banner.prestigecasino.com/download/casino/client_update_urls.php

如果我使用浏览器 - 我会得到一个结果。

如果我使用perl LWP :: UserAgent wget - 我会得到一个奇怪的输出。

wget http://banner.prestigecasino.com/download/casino/client_update_urls.php
<html><head><meta charset="utf-8"></head><body><script src="//d1a702rd0dylue.cloudfront.net/js/iealml-10-1/10800.js"></script><script>window.rbzns = 
{}; rbzns.challdomain=".prestigecasino.com"; rbzns.ctrbg="wGc4uoPOw9Z43y/mCXjboruSCfOcUOcHsILlHf2shF+Z1ygLZnvECWQy1JIbHMvSkIFkkQq7CKSrHCO3soSA9AM6dCX
SwL4Dot2zXoNeKndXwgSeBfFTc/ACeunbVu2nBbvQeR1+cNZBVwqjExNn8C5+uj0gk7vCm6h6GaiWgJI=";rbzns.rbzreqid="ovh-whg-reblazer531343336323632393134a750dc75b5199
690"; winsocks(true);</script></body></html>

1 个答案:

答案 0 :(得分:3)

这是一个机器人检测脚本。它在那里运行脚本来解开您下载的内容并验证您使用的是(javascript感知的)浏览器,而不是LWP。

这种情况相当普遍,特别是对于那些可以通过自动化脚本“播放”的网站而言,这些网站可以比您亲自更有效率。

诀窍是,如果你'运行'javascript,你可能会得到一些东西,可以渲染页面,或者将你重定向到一个,或者设置一个cookie或类似的东西。这意味着基本的(WGET / LWP / WWW :: Mechanize)工具不起作用。

请参阅:

Unexpected result from PHP request

有关这可能如何运作的更多细节。此特定 javascript似乎设置了一个名为rbzid的Cookie,您可以从浏览器中检索该Cookie,然后在您的脚本中重复使用。