Python: httplib 请求() 无法使用
我在使用httplib的request()方法时遇到了一些问题。这是个很奇怪的问题。我的代码看起来是这样的:
query = "/search.json?q=&geocode=" + slat + "," + slong + "," + mline[2] + "km&rpp=" + mline[3]
conn = httplib.HTTPConnection("search.twitter.com")
conn.request("GET", query) #request here
r1 = conn.getresponse()
preresult = r1.read()
print preresult
问题是,什么都没有打印出来。query
是由很多其他字符串拼接而成的。更奇怪的是,如果我把query
直接设置为一个实际的字符串值(比如,直接设置为"/search.json?q=&geocode=27.5916,086.5640,100km&rpp=2"
,而不是拼接的那些字符串),那么它就能正常打印出来。我是通过在上面的代码中拼接后用print query
来获取query
的值的。为了让事情更清楚,下面这个代码可以正常工作(使用上面print query
的值):
query = "/search.json?q=&geocode=27.5916,086.5640,100km&rpp=2"
conn = httplib.HTTPConnection("search.twitter.com")
conn.request("GET", query) #request here
r1 = conn.getresponse()
preresult = r1.read()
print preresult
在这两种实现中,query
的值应该是一样的。我检查了第一种实现中query
的类型,确保它是一个字符串。但它们的结果却不同。有什么想法吗?谢谢!
1 个回答
0
原来mline[3]的末尾有一些看不见的字符。它不是换行符,也不是空格……不过我先把它转换成整数,然后再把它转换回字符串,这样多出来的字符就消失了,我的问题也解决了。谢谢大家的帮助。