我可以打开http://delta.com罚款。 但是当我在同一个url上执行wget时,它会返回HTTP 500,Server Error。 有人可以解释这种差异的原因
谢谢, 约翰
答案 0 :(得分:3)
该网站似乎正在尝试根据该语言进行一些工作,它可以使用Accept-Language
标题正常工作。
wget --header='Accept-Language: en-us,en;q=0.5' http://delta.com
答案 1 :(得分:1)
如果该站点可在浏览器中运行,则可能是拒绝wget的用户代理或尝试根据该语言进行某些工作。
要解决此问题,可以添加--header
和--user-agent
。
在您的浏览器中,假设您使用的是Chrome,请转到“网络”,然后转到该URL的位置。然后,检查请求标头,并在命令中使用Accept-Language
和User-Agent
中的内容。例如:
wget --header='Accept-Language: en-US,en;q=0.9,pt-PT;q=0.8,pt;q=0.7,de;q=0.6,fr;q=0.5,es;q=0.4,it;q=0.3,gl;q=0.2,hu;q=0.1' --user-agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36" -c "http://..." -w 1