ValueError: dict contains fields not in fieldnames: ‘link’
import requests
import json
import csv
url = 'https://silkroad.csdn.net/api/v2/assemble/list/channel/pc_hot_word?channel_name=pc_hot_word&size=10&user_name=weixin_46700209&platform=pc&imei=10_19089823060-1575974967374-978317'
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36 Edg/89.0.774.57','Cookie':'_uab_collina=161623964584445430900858; JSESSIONID=3A3E2650BB278B8CEE815BBD9BAE44A3; _jc_save_wfdc_flag=dc; BIGipServerotn=334496266.38945.0000; BIGipServerpool_passport=65274378.50215.0000; RAIL_EXPIRATION=1619602585205; RAIL_DEVICEID=V2sor_qHCTSnTHlOqvOUqnlL43oWhkS9-S2lAiBIkOR4CfbMEg3OiupqpaEBVtv87D3JPMvJaGZkPF4QNpgkrMCkSe6uXN56Zf_LVp-0TsNY1LgNFvmpLXwJ8PKwOc2r2u6sAmeW4MVpUMAnn5Pa5c3xbXEzgpgh; route=9036359bb8a8a461c164a04f8f50b252; _jc_save_fromStation=%u897F%u5B89%2CXAY; _jc_save_toStation=%u5EF6%u5B89%2CYWY; _jc_save_fromDate=2021-04-29; _jc_save_toDate=2021-04-25','cookie':'Hm_ct_6bcd52f51e9b3dce32bec4a3997715ac=6525*1*10_19089823060-1575974967374-978317!5744*1*weixin_46700209; uuid_tt_dd=10_19089823060-1575974967374-978317; p_uid=U010000; UN=weixin_46700209; UserName=weixin_46700209; UserInfo=149a43ece50c4fbe8b540cb303874d85; UserToken=149a43ece50c4fbe8b540cb303874d85; UserNick=weixin_46700209; AU=C5D; BT=1610862729390; Hm_up_6bcd52f51e9b3dce32bec4a3997715ac=%7B%22islogin%22%3A%7B%22value%22%3A%221%22%2C%22scope%22%3A1%7D%2C%22isonline%22%3A%7B%22value%22%3A%221%22%2C%22scope%22%3A1%7D%2C%22isvip%22%3A%7B%22value%22%3A%220%22%2C%22scope%22%3A1%7D%2C%22uid_%22%3A%7B%22value%22%3A%22weixin_46700209%22%2C%22scope%22%3A1%7D%7D; __gads=ID=64c6f0bd72c9053d-229e75800ec400b1:T=1602734373:S=ALNI_Ma8SkpYJxyrgu3S0tXG_nJTJfWdOw; dc_sid=3062fbeb9284b8651bf6f615a8bb10d1; c_first_page=https%3A//www.csdn.net/; c_first_ref=default; c_segment=13; Hm_lvt_6bcd52f51e9b3dce32bec4a3997715ac=1619338924,1619433187,1619527258,1620198599; log_Id_click=694; dc_session_id=10_1620217300190.880458; c_ref=https%3A//mp.csdn.net/console/article; c_page_id=default; announcement-new=%7B%22isLogin%22%3Atrue%2C%22announcementUrl%22%3A%22https%3A%2F%2Fblog.csdn.net%2Fblogdevteam%2Farticle%2Fdetails%2F112280974%3Futm_source%3Dgonggao_0107%22%2C%22announcementCount%22%3A0%2C%22announcementExpire%22%3A3600000%7D; c_pref=https%3A//mp.csdn.net/console/article; dc_tos=qsmvoh; log_Id_pv=811; Hm_lpvt_6bcd52f51e9b3dce32bec4a3997715ac=1620217316; log_Id_view=1086'}
res = requests.get(url,headers=headers)
rem = res.text
a = json.loads(rem)
b = a['data']['items']
list1 = []
for i in b :
d = {}
d['link'] = i['productId']
list1.append(d)
headers = ('link')
with open('热搜2.csv', 'w', encoding='utf-8', newline='') as f:
writer = csv.DictWriter(f,headers)
writer.writeheader()
writer.writerows(list1)
- 我们用写入表头时,即(headers)应该写成(headers,)要么是可迭代的,要么就是元组,我们少加入了个逗号就不是元组了,就变成了字符串