栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python爬虫中selenium如何登录微博?

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python爬虫中selenium如何登录微博?

在我们用爬虫采集信息之前,需要进行一个登录的操作进入网页,不然就会被网站认为是爬虫而阻拦在外,相当于我们需要给爬虫准备一个进入网站的通行证。除了我们最近老生常谈的cookie方法,其实我们还有selenium同样可以达到爬虫登录的效果。具体的模拟方法,我们以微博为例,在下面的代码中为大家展示。


selenium是一个用于Web应用程序测试的工具,同时我们也可以通过 selenium 实现登录功能。以微博为例

from selenium import webdriver
driver = webdriver.Chrome()
driver.get("https://weibo.com/")
username = driver.find_element_by_css_selector("input#loginname")
username.clear()
username.send_keys('your_username')
password = driver.find_element_by_css_selector('span.enter_psw')
password.clear()
password.send_keys('your_password')


在输入账号和密码后,最大的问题来了,验证码都是图片,一般我们要借助图像识别才能识别验证码,但是由于验证码的种类非常多(英文、数字、中文或者它们的混合),而且验证码还可能被一定的旋转、扭曲甚至互相粘连,以至于人眼也不能很好的辨认,因此大多数模型的通用性和准确率并不是很高。因此效率最高的方法就是在selenium打开浏览器之后手动登录(过程中调用time.sleep()暂停程序)。因为对于爬虫来说最重要的不是解决登录问题,因此这么做可以节约大量的时间以及代码量,虽然很蠢,但是很有用。

 

完成登录后,用一下代码即可获取cookie,并把cookie_dict传给pyspider全局参数中的cookies即可

cookies_dict = {}
cookies = driver.get_cookies()for cookie in cookies:
    cookies_dict[cookie['name']] = cookie['value']


完成以上的操作后,下一步的数据采集想必小伙伴们都不成问题了。通过代码体验,小编觉得selenium的登录方法也比较简单,python小白可以多尝试下。更多Python学习指路:PyThon学习网教学中心。


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/11569.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号