0
我已经将URL存储在应该传递给urllib2的列表中。然而,urllib似乎不太喜欢这一点,我只是不明白为什么!为什么urllib2不接我的网址?
这里是我有:
url = list[1]
response = urllib2.urlopen(url)
html = response.read()
的网址是什么样的谷歌地图路线的Web API网址:
http://maps.googleapis.com/maps/api/directions/json?origin=[origin]&destination=[destination]&waypoints=optimize:true|[waypoint1]|[waypoint2]&sensor=false
现在,如果我尝试运行此,检索html总是看起来像这样:
{
"routes" : [],
"status" : "INVALID_REQUEST"
}
指示传递的URL有问题。但是,如果我走的URL,并直接分配给它,就像这样:
url = "http://maps.googleapis.com/maps/api/directions/json?origin=[origin]&destination=[destination]&waypoints=optimize:true|[waypoint1]|[waypoint2]&sensor=false"
response = urllib2.urlopen(url)
html = response.read()
结果会很乐意与(对我来说)必不可少的端部看起来像这样来通过:
"warnings" : [],
"waypoint_order" : [ 2, 0, 7, 5, 6, 4, 3, 1 ]
}
],
"status" : "OK"
}
我(希望不要太愚蠢)的问题是:为什么urllib在URL直接分配时执行其工作,但如果它来自列表则不行?
非常感谢您的帮助, Ĵ
PS:有一个原因论坛软件总是切断我的“大家好”的问候?
我建议名单[1]是不一样的你的字符串。另外,我建议你不要命名数组“列表”,因为它是一个类型。 – moopet
干杯moopet, 在我的代码列表[1]实际上并没有被称为,我只是需要匿名一点;) 关于列表[1]不等于我的网址:这怎么可能,因为我用'print list [1]'让Python打印相应的字符串,然后将它复制到原来的位置......? – JoW
回复:“ps” - 人们可能会编辑它,因为问候和谢谢你不需要在这里。只是问题。 – jdi