Python+selenium+firefox登录微博并爬取数据(2)

上次写到安装完成环境,并且成功访问到微博首页(未登录状态)。后来发现新浪的登录机制太繁琐,所以放弃selenium登录,转向使用新浪官方Api 爬取数据。但是,写完之后才发现,调用接口也有限制。没办法只能模拟登陆。(都是被逼的)

所以我又回到了使用selenium模拟登陆的道路上。我准备在登陆成功后获取到cookie。这样下次登录直接带上cookie就可以访问成功。

上次说到有图片验证码的问题。我最后发现,如果是手机号码登录会弹出图片验证码,如果是邮箱登录则不存在。频繁登录的话,就不敢保证的。模拟登陆是为了获取cookie。而为了一步到位,后期不再为了取cookie再模拟登陆,所以模拟登陆也要自动化。

基本思路:首先访问新浪首页,然后填入“用户名”,“密码”,最后点击“登录按钮”。完成模拟登陆。登陆成功后。把cookie 保存到本地。在下次登录时,直接获取cookie 访问。

上代码:(注解我写的很详细了):

接下里编写一下cookie的保存,和cookie的获取代码:如何判断cookie已经失效呢?一般cookie里面有一个失效时间。但是新浪的我没找到。所以我把获取cookie做成一个调度任务,每天调度一次。然后保存cookie。或者可以在登录之后,检查自己昵称所在的元素是否生成,如果生成了,则不需要登录,否则,就是cookie失效。重新登录。

接下来就是调用cookie,然后访问新浪:

模拟登陆成功后,就可以干自己想干的事了,嘎嘎!!!

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值