最近要爬取一部分词根的百度相关词用,然后就直接用python上手了,但是发现在爬取的过程中会存验证码的问题,怎么解决呢?也看了很多文章,后面测试了6万词根,出数据比较稳定了,就到专栏来给大家分享一下,
1、请求网址
百度相关词请求网址,使用这个样式的
https://www.baidu.com/s?wd=关键词&usm=3&rsv_idx=2&rsv_page=1
2、请求头需要加入Accept
"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",
3、cookies填写【重要】
cookies填写时,使用百度滑块手动验证完之后的cookies,然后再去测试数据
4、使用随机UA
python引入随机UserAgent
from fake_useragent import UserAgent ua = UserAgent() #在请求头中使用随机抽取 "User-Agent":ua.random,
为了保证效率,淘小白在测试的时候,没有做时间sleep,截止发文前,6万词根,已经获取到接近3万相关词。
如果你在爬百度的过程中,出现了人机验证,可以按照上面的几个点来修改测试下,有效果或者有问题,记得评论区留下你宝贵的反馈。