用爬虫爬取百度指数关键词躺平,
分城市,拜托了各位!
#coding=gbk
import csv,datetime
import requests
url='http://index.baidu.com/api/WordGraph/multi'#百度指数-需求图谱的url
start_time=datetime.date(2020,9,6)#开始爬取日期的上一周
while True:#这里不想爬太多可以改为for循环
next_time = start_time + datetime.timedelta(7)#+一周
if next_time.month ==3 and next_time.day==14:#因为目前这里截止到3.7号,所以3.14时停止循环
break
else:
if next_time.month == start_time.month :#如果月份都是一样的,扔进一个csv文件
with open('baiduzhishu' + str(start_time.month) + '.csv', 'a', newline='', encoding='gbk') as f:
writer = csv.writer(f)
params = {
'wordlist[]': '原神',#这里修改关键词
'datelist': str(next_time.strftime('%Y%m%d'))#开始日期
}
res_index = requests.get(url, params=params)
json_index = res_index.json()
list_index = json_index['data']['wordlist'][0]['wordGraph']
for index in list_index:
keyword_list = index['word']
writer.writerow([keyword_list])
else:
with open('baiduzhishu' + str(next_time.month) + '.csv', 'a', newline='', encoding='gbk') as f:#进入新的月份时新建一个csv文件
writer = csv.writer(f)
params = {
'wordlist[]': '原神',
'datelist': str(next_time.strftime('%Y%m%d'))
}
res_index = requests.get(url, params=params)
json_index = res_index.json()
list_index = json_index['data']['wordlist'][0]['wordGraph']
for index in list_index:
keyword_list = index['word']
writer.writerow([keyword_list])
start_time = next_time
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632