我正在尝试使用浏览器尽可能接近Wireshark输出 手动,通过wget或urllib。
输出是不同的,我想知道为什么,我如何克服这个?
谢谢!
答案 0 :(得分:0)
有几件事......
浏览器:
可能有几个特定的标题(useragent,cookies,referer,misc.pplugins,no-track)
请求所有子元素/脚本/资源,可能在同一连接上(保持活动状态)
可以请求gzipped datastream作为回报
WGET:
默认情况下具有最小标头(useragent),但可以使用/更改其他参数
通常是1-off,仅请求主html而不是其子资源
如果您看到不同的主HTML,该网站可能是基于useragent和/或Cookie的服务器端脚本定制内容(例如"登录")
答案 1 :(得分:0)
wget主要用于抓取整个或部分网站以供离线查看,或者用于从HTTP或FTP服务器快速下载单个文件。
浏览器请求包含HTTP头,如User Agent,Referer等。
如果您想模仿wget到浏览器之类的请求,可以使用wget请求传递HTTP标头。
像这样 -
#wget http://www.remote.co.in/images/myimage.jpg --header =“User-Agent:Mozilla / 5.0(Windows NT 5.1; rv:23.0)Gecko / 20100101 Firefox / 23.0”--header =“接受:image / image / png,image / ; q = 0.8, / *; q = 0.5“--header =”Accept-Language:en-US,en; q = 0.5“--header =”Accept-Encoding :gzip,deflate“--header =”Referer:http://www.mywebsite.com“