因此,我正在尝试解析Magic of the Gathering图像URL的JSON文件并下载它们。
我在下面编写了脚本,在每个请求最多需要3或4分钟才能下载之前,我就把头撞墙了。我以为起初我被网站限制了,但事实并非如此。
我最终从我的cmd shell切换到git bash shell,运行了脚本,它按预期工作,所以我相信我已经解决了。好了,即使在git bash shell中,代码也运行缓慢,唯一改变的是我正在查看的设置。我尝试使用'-u'禁用输出油门,但这无济于事。
“完成”永远不会被打印,即使我知道它已加载所有json。
如果在我的if检查之前将打印语句放入for循环中,则会打印“完成”。它将打印第一个文件名,仅此而已。
import json
import urllib
import time
with open('scryfall-oracle-cards.json') as f:
data = json.load(f)
print("done")
count = 0
for x in data:
if x['set'] == "dom":
cropUrl = x["image_uris"]["art_crop"]
cardname = x['name'].replace(' ', '_') + "__" + x['set']
fileName_crop = cardname + "_crop.jpg"
print(fileName_full)
time.sleep(.1)
urllib.urlretrieve(cropUrl, fileName_crop)