Python urllib2.urlopen返回HTTP错误503

DDS*_*tus 2 python urllib2 urlopen

在这里,您可以看到我的代码段.从3天开始它不再起作用了.我的python在Ubuntu 10.04.4 LTS下运行.Python版本是2.6.5.

#!/usr/bin/env python
import urllib2 as ur
...
webpage = []

site = "http://www.gametracker.com/server_info/94.250.218.247:25200/top_players/"
hdr =  {'User-Agent': 'Mozilla/5.0'}
req = ur.Request(site , headers=hdr)
data = ur.urlopen(req)
for line in data:
    line = line.split(",")
    webpage.append(line)
...
Run Code Online (Sandbox Code Playgroud)

这里返回的Error-msg

Traceback (most recent call last):

File "read_top5.py", line 21, in <module>
  data = ur.urlopen(req)
File "/usr/lib/python2.6/urllib2.py", line 126, in urlopen
  return _opener.open(url, data, timeout)
File "/usr/lib/python2.6/urllib2.py", line 397, in open
  response = meth(req, response)
File "/usr/lib/python2.6/urllib2.py", line 510, in http_response
  'http', request, response, code, msg, hdrs)
File "/usr/lib/python2.6/urllib2.py", line 435, in error
  return self._call_chain(*args)
File "/usr/lib/python2.6/urllib2.py", line 369, in _call_chain
  result = func(*args)
File "/usr/lib/python2.6/urllib2.py", line 518, in http_error_default
  raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
urllib2.HTTPError: HTTP Error 503: Service Temporarily Unavailable
Run Code Online (Sandbox Code Playgroud)

Joe*_*Joe 5

该服务目前无法使用.curl:

curl -i "http://www.gametracker.com/server_info/94.250.218.247:25200/top_players/"
Run Code Online (Sandbox Code Playgroud)

还返回503:

HTTP/1.1 503 Service Temporarily Unavailable
Date: Mon, 08 Dec 2014 09:37:17 GMT
Content-Type: text/html; charset=UTF-8
Server: cloudflare-nginx
Run Code Online (Sandbox Code Playgroud)

该服务使用CloudFlare,它提供了一种DDoS保护形式,要求您使用完整的Web浏览器进行连接.

虽然您可以通过决定使用此服务来解决它,但站点操作员声明他们不希望您使用脚本进行连接.

这不是一个编程问题; 您需要确定脚本无法使用该服务的原因.