Lec4 practice百度爬取所搜索的关键词的结果数量

def bd_searout(key,t1,t2):   
    '''key是搜索的关键词,t1是起始时间,t2是结束时间,
    t1,t2需要输入datetime类型的时间数据,例如:先定义t1=datetime(2020,1,1),
    然后再输入到函数中。函数返回在百度搜索的指定时间段的关键词的搜索结果的数量'''
    import requests,re
    from datetime import datetime
    t1_stamp = datetime.timestamp(t1)
    t2_stamp = datetime.timestamp(t2)
    header={'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9'\
    ,'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.163 Safari/537.36'}
    url = f'https://www.baidu.com/s?wd={key}&ie=UTF-8&gpc=stf={t1_stamp},{t2_stamp}|stftype=2&tfflag=1'
    result = requests.get(url,headers = header)
    text_out = result.text
    p = re.compile('百度为您找到相关结果约.+个')
    out = p.search(text_out).group()
    return out

示例:

t1 = datetime(2020,1,1)
t2 = datetime(2020,3,31)
out = bd_searout('波波',t1,t2)
print(out)

结果:

百度为您找到相关结果约18,600,000
  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值