Python urllib 使用特定 URL 冻结



>我正在尝试获取一个页面,urlopen挂起并且从不返回任何内容,尽管该网页非常轻巧,可以用任何浏览器打开没有任何问题

import urllib.request
with urllib.request.urlopen("http://www.planalto.gov.br/ccivil_03/_Ato2007-2010/2008/Lei/L11882.htm") as response:
    print(response.read())

这个简单的代码在检索响应时会冻结,但是如果您尝试打开 http://www.planalto.gov.br/ccivil_03/_Ato2007-2010/2008/Lei/L11882.htm 它会毫无问题地打开

www.planalto.gov.br 正在使用用户代理检测。如果指定有效的用户代理,则请求将正确完成。urllib 库没有崩溃,它只是在等待。

curl -H "User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36" http://www.planalto.gov.br/ccivil_03/_Ato2007-2010/2008/Lei/L11882.htm

对我来说工作得很好,但是

curl http://www.planalto.gov.br/ccivil_03/_Ato2007-2010/2008/Lei/L11882.htm

冇。

就像上面说的 RPGillespie 一样,使用 urllib2 或请求添加用户代理标头(有关更多信息,请参阅如何使用 python 的 urllib 设置标头?(。

相关内容

  • 没有找到相关文章

最新更新