【问题标题】:Getting 505 HTTP Error in python django在 python django 中获取 505 HTTP 错误
【发布时间】:2016-03-29 01:31:55
【问题描述】:

我正在尝试使用 urllib2 包访问 api。当我运行我的代码时,得到一个错误,显示为 HTTP 错误 505:不支持 HTTP 版本。我该怎么办?我在这里添加了我的错误的重要部分。请帮帮我。谢谢。

这是我的错误

 HTTPError at /polls/time/page=4010102930/
 HTTP Error 505: HTTP Version Not Supported
 Request Method:    GET
 Request URL:   http://127.0.0.1:8000/polls/time/page%3D4010102930/
 Django Version:    1.9.2
 Exception Type:    HTTPError
 Exception Value:   
 HTTP Error 505: HTTP Version Not Supported
 Exception Location:    C:\Python27\Lib\urllib2.py in http_error_default, line 558
 Python Executable: C:\Users\JpG\Virtual_Env\Scripts\python.exe
 Python Version:    2.7.10
 Python Path:   
 ['E:\\JpGxx\\Python PgMz\\Pure_Python\\DJ_1',
  'E:\\JpGxx\\Python PgMz\\Pure_Python\\DJ_1',
  'C:\\Windows\\SYSTEM32\\python27.zip',
  'C:\\Users\\JpG\\Virtual_Env\\DLLs',
  'C:\\Users\\JpG\\Virtual_Env\\lib',
  'C:\\Users\\JpG\\Virtual_Env\\lib\\plat-win',
  'C:\\Users\\JpG\\Virtual_Env\\lib\\lib-tk',
  'C:\\Users\\JpG\\Virtual_Env\\Scripts',
  'C:\\Python27\\Lib',
  'C:\\Python27\\DLLs',
  'C:\\Python27\\Lib\\lib-tk',
  'C:\\Users\\JpG\\Virtual_Env',
  'C:\\Users\\JpG\\Virtual_Env\\lib\\site-packages',
  'C:\\Python27',
  'C:\\Python27\\lib\\site-packages']
 Server time:   Mon, 28 Mar 2016 22:16:10 +0530

【问题讨论】:

    标签: django python-2.7 http-status-code-505


    【解决方案1】:

    该错误是由于您尝试访问的服务器不支持您的请求HTTP版本,因此您需要更改它。可能,您需要发送 1.0 HTTP 请求。

    import urllib2, httplib
    httplib.HTTPConnection._http_vsn = 10
    httplib.HTTPConnection._http_vsn_str = 'HTTP/1.0'
    print urllib2.urlopen('your_url').read()
    

    我强烈建议使用requests 库来处理来自python 的http 请求。

    【讨论】:

    • http 版本指定对我不起作用。但是请求起作用了。谢谢
    • requests 包中还有哪些有用的方法,例如 get()
    猜你喜欢
    • 1970-01-01
    • 2012-05-30
    • 1970-01-01
    • 1970-01-01
    • 2019-08-06
    • 1970-01-01
    • 2011-02-14
    • 2011-12-05
    • 1970-01-01
    相关资源
    最近更新 更多