全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 python论坛
1468 2
2022-08-08
大家好:
  ①目前在学习爬虫,想实现一下功能:
  抓取百度输入【两个关键词】后页面中显示的【相关结果数量】,年份为2019、2020两年数据
  ②出现问题:
  设置时间后相关结果数量不再显示(图如附件),且代码运行有时正常,有时显示'NoneType' object has no attribute 'group'
  关键词有两个,如何组合可达到搜索结果为   ”关键词1“&”关键词2”  ?(目前仅尝试了一个关键词)
  ③已有代码如下:
def bd_searout(key,t1,t2):   
    '''key是搜索的关键词,t1是起始时间,t2是结束时间,
    t1,t2需要输入datetime类型的时间数据'''
    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; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.0.0 Safari/537.36'}
    url = f'https://www.baidu.com/s?ie=UTF-8&wd={key}&gpc=stf={t1_stamp},{t2_stamp}|stftype=2&tfflag=1'
    result = requests.get(url,headers = header,timeout=5)
    print(url)
    print(result)
    text_out = result.text
    p = re.compile('百度为您找到相关结果约.+个')
    out = p.search(text_out).group()
    return out


from datetime import datetime
t1 = datetime(2019,1,1)
t2 = datetime(2019,12,31)
out = bd_searout('python',t1,t2)
print(out)


     求助大家,万分感谢!!!

附件列表
微信图片_20220808190236.png

原图尺寸 394.27 KB

微信图片_20220808190236.png

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2022-8-9 19:30:35
这个用clicknium很简单。 https://www.clicknium.com/documents/quickstart
vs code里面搜索一下clicknium插件就好了。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2022-8-9 19:44:50
我刚才简单用clicknium试了一下。 你只要用recorder点一下那段文字  然后把locator里的属性修改一下就可以拿到这段文字了。 截取一下就能获得数字。 <TabclassName="Chrome_WidgetWin_1" role="window" title="*百度搜索" />

<WebancestorId="tsn_inner" sInfo="百度为您找到相关结果约*个" tag="SPAN" />


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群