准备工作:
1.关于selenium介绍:
python自动化入门的话,selenium绝对是最方便的选择,基本逻辑即为:程序模拟人的行为操作浏览器,这样的操作需要借用浏览器驱动,我选用的是chrome浏览器,也搭建了响应的chromedriver.exe 找到跟浏览器对应的驱动版本就可以了。
谷歌驱动下载官网:
Chrome for Testing availability
EDGE驱动下载官网:Microsoft Edge WebDriver | Microsoft Edge Developer
2. 爬虫模块requests配置:
这一趴也不能说配置,基本的python模块下载命令:pip install 模块,最近使用requests的时候 出现一些模块版本冲突的问题。首当其冲的是这个urllib3 这个模块在我们下载好requests之后 执行会出现这个报错 想解决就降版本 pip install urllib3==1.26.9
好的 前面这些聊完了 咱就开干!!!
先找个小姐姐当作采集素材,这个没毛病吧
https://www.douyin.com/user/MS4wLjABAAAA3Edl4dvMxf-9uaJf8Zi8pt6RDBKQPPUzczKMMtwgInzWsy9UP1MoLf9qFXUwTE13?vid=7313874768241921319
这一步很关键,不选个好看的影响咱的学习热情和积极性!然后接下来直接跑模拟代码!!
from selenium import webdriverdriver=webdriver.Chrome()driver.get('你喜欢的博主主页链接')
咱一润 然后你就会发现 咱浏览器一打开就直接闪退了
想解决?来给你三套方案自己选择
方案① 最水的方案:
input()
time.sleep(10000)
一个是加阻塞,一个是加显示等待 都放代码尾巴上
你这个网页铁定不会跑 因为都没运行完成
方案② 谨慎选择:
之所以会闪退 原因是selenium太新了 4.0.0的版本就得闪退 想解决selenium降低版本
pip install selenium==3.141.0
方案③ 一般都用他:
配置options对象,即可正常使用退出!
想明白咋整的 直接上代码!!!
from selenium import webdriver
from selenium.webdriver.chrome.options import Optionsqudong = Options()
qudong.add_experimental_option('detach', True)
driver = webdriver.Chrome(options=qudong)
driver.get('你喜欢的博主主页链接')
driver.implicitly_wait(10)
好 看到这里了 直接拿走 润一遍 你就会发现他不闪退 就是这么简单明了
搞定继续撸~
这会去selenium模拟 你会发现有验证块识别和登录验证 douyin验证块有跟没有一样 直接用手 为什么用手呢 因为你刚抓他 他这块块不会直接出来 多抓几次才来 影响不大
有意思的是这个登录验证 你不登录 你就只能拿到20个首页视频 博主主页登录就是异步加载的 往下滑动才会加载新的视频出来 怎么解决? 你先模拟登录 在模拟滑动条