def parse(url, params):
res = requests.get(url, headers=headers, params=params, proxies=proxies)
# print(json.dumps(res.json(), ensure_ascii=False,indent=4))
try:
if len(res.json()) == 0:
return
for item in res.json():
data = {
"title": item["title"],
"release_date": item["release_date"],
"cover_url": item["cover_url"],
"url": item["url"],
"score": item["score"],
"types": item["types"],
"rank": item["rank"],
"actors": item["actors"],
"regions": item["regions"],
"actor_count": item["actor_count"],
"vote_count": item["vote_count"]
}
res = col.insert_one(data)
print(res.inserted_id)
params_next = {
'type': "11",
'interval_id': '100:90',
'action': "",
'start': str(int(params["start"]) + 20),
'limit': "20"
}
parse(url, params_next)
except:
print("this data is empty")
parse(url, params_next)
json.loads() 方法无法解析一个 JSON 字符串。该错误消息表明该 JSON 字符串是空的或者格式不正确,没有包含一个有效的 JSON 对象。当有部分需要获取的数据,没有及时加载出来时,就会报错。我也遇到了同样的错误,可以增加try-except增加程序的健壮性,这样虽然会有部分数据丢失,但是程序可以正常执行下去。