所以我使用以下代码:
allArgs = ['subway.py', '1b8d465e-b217-46f9-87a7-e9e48aaccb0f', 'B38']
HTTPCookieProcessor()
bus = urllib2.urlopen("http://api.prod.obanyc.com/api/siri/ \
vehicle-monitoring.json?key=" + allArgs[1] + \
"&VehicleMonitoringDetailLevel=calls&LineRef=" + allArgs[2])
并获得HTTPError 404.我尝试在各种论坛上阅读有关此错误的其他文档和问题,但我无法理解。有人在回答类似问题时提到过开启cookie,但我再也不明白这意味着什么。我试着看看其他人制作开罐器的例子,但他们似乎都涉及很多与我试图在这里做的事情不相关的事情,而且我不确定我到底需要什么。
非常感谢帮助,谢谢。
答案 0 :(得分:2)
请改为尝试:
import urllib
import json
url = "http://api.prod.obanyc.com/api/siri/vehicle-monitoring.json?"
args = {'VehicleMonitoringDetailLevel': 'calls'}
args['key'] = '1b8d465e-b217-46f9-87a7-e9e48aaccb0f'
args['LineRef'] = 'B38'
try:
data = json.load(urllib.urlopen('{}{}'.format(url, urllib.urlencode(args))))
except (IOError, ValueError):
print('Problem fetching data')