这段代码在我的本地计算机上运行良好,但是当我在pythonanywhere.com上载并运行它时,出现此错误。 我的代码:
url = "http://www.codeforces.com/api/contest.list?gym=false" hdr = {'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.64 Safari/537.11', 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'Accept-Charset': 'ISO-8859-1,utf-8;q=0.7,*;q=0.3', 'Accept-Encoding': 'none', 'Accept-Language': 'en-US,en;q=0.8', 'Connection': 'keep-alive'} req = urllib2.Request(url, headers=hdr) opener = urllib2.build_opener() openedReq = opener.open(req, timeout=300)
错误:
Traceback (most recent call last): File "/home/GehadAbdallah/main.py", line 135, in openApi openedReq = opener.open(req, timeout=300) File "/usr/lib/python2.7/urllib2.py", line 410, in open response = meth(req, response) File "/usr/lib/python2.7/urllib2.py", line 523, in http_response 'http', request, response, code, msg, hdrs) File "/usr/lib/python2.7/urllib2.py", line 448, in error return self._call_chain(*args) File "/usr/lib/python2.7/urllib2.py", line 382, in _call_chain result = func(*args) File "/usr/lib/python2.7/urllib2.py", line 531, in http_error_default raise HTTPError(req.get_full_url(), code, msg, hdrs, fp) urllib2.HTTPError: HTTP Error 403: Forbidden
PS我正在使用python 2.7
PythonAnywhere上的免费帐户仅限于网站白名单,仅http / https,并且通过代理进行访问。这里有更多信息:
PythonAnywhere Wiki:“为什么打开URL时会出现403禁止错误?”