【发布时间】:2014-05-17 20:48:48
【问题描述】:
我有以下代码:
import re
from re import sub
import cookielib
from cookielib import CookieJar
import urllib2
from urllib2 import urlopen
cj = CookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
opener.addheaders=[('user-agent' , 'Safari/7.0.2')]
def check(word):
try:
query = "select * from geo.places where text ='"+word+"'"
sourceCode=opener.open('http://query.yahooapis.com/v1/public/yql?q='+query+'&diagnostics=true').read()
print sourceCode
except Exception, e:
print str(e)
print 'ERROR IN MAIN TRY'
myStr = ['I','went','to','Boston']
for item in myStr:
check(item)
我正在尝试查询select * from geo.places where text = 'Boston'(例如)。
我不断收到此错误:
HTTP Error 505: HTTP Version Not Supported
ERROR IN MAIN TRY
什么会导致这个错误,我该如何解决?
【问题讨论】:
-
你能嗅探你对服务器所做的请求并发布它吗?您似乎使用了错误的 HTTP 版本。 urllib2 说它默认使用 HTTP/1.1,这是您尝试联系的服务器使用的版本。这段代码实际上是在发送 HTTP/1.1 吗?