Python:httplib request()不起作用

时间:2013-03-09 08:16:36

标签: 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",而不是连接大量其他字符串),那么它会打印出来正如它应该。在上面的代码中连接后,我通过query得到了print 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 :(得分:0)

事实证明mline [3]最后有一些看不见的角色。它不是换行符或空格....但我先将它转换为int,然后将其转换回字符串,额外的字符消失,我的问题就消失了。谢谢你的帮助。