我正在做一些网页抓取(实际上是使用网络服务进行地理编码)并将结果写入文件:
for i, row in enumerate(data):
data[0] = url
output = {}
try:
r = requests.get(url)
if r.status_code == 200:
results = r.json()
if results:
output['Lat'] = results['wgs84_lat']
output['Lng'] = results['wgs84_lon']
writer.writerow(output)
except:
pass
我的问题是,如果出现问题,我必须停止这个过程,最后我会写一个半写的文件。
然后我有两个选择:我可以从头重新开始(繁琐的一百万行到地理编码),或者我可以添加样板代码来检查输出文件中是否已存在该行,如果是这样则跳过它。
我觉得必须有一种更方便的方法来检查是否已经获得了该行。最好的,最恐怖的方式是什么?也许pickle
(我从未使用过?