urllib2错误403:禁止

时间:2014-11-18 12:59:34

标签: python urllib2

我已经发布到这个网站并收到了非常有用的指导,我还带着另一个问题回来。

我在哪里出错了,我确信这是从各个网站访问信息所需要的。在这种情况下,CME集团。

   import urllib2

url = "http://www.cmegroup.com/trading/energy/natural-gas/natural-gas.html"
request= urllib2.Request(url)
handle = urllib2.urlopen(request)
content = handle.read()
splitted_page = content.split("<span class=\"cmeSubHeading\">", 1);
splitted_page = splitted_page[1].split("</span>", 1)
print splitted_page[0]

错误读取,

HTTPError(req.get_full_url(), code, msg, hdrs, fp)
HTTPError: HTTP Error 403: Forbidden

提前谢谢你。

2 个答案:

答案 0 :(得分:1)

实际上问题是他们阻止了没有用户代理的每个人

import urllib2

request = urllib2.Request("http://www.cmegroup.com/trading/energy/natural-gas/natural-gas.html", None, {'User-Agent': 'Mozilla/5.0'})
content = urllib2.urlopen(request).read()
splitted_page = content.split("<span class=\"cmeSubHeading\">", 1);
splitted_page = splitted_page[1].split("</span>", 1)
print splitted_page[0]

答案 1 :(得分:1)

如果您必须执行GET请求,我会建议您使用Requests python包。您可以在this post中阅读其优势。

但是,如果您收到403消息,则可能是您尝试访问某些受限制的数据(Wikipedia link)。