其实在前一张博客动态网页——selenium+案例 中已经简单的爬过一遍qq邮箱了。本次呢是在上一次的代码上再完善一下啊。
其实我们很多习惯是养成了的,比如说我们很多人都是打开电脑后会立即登录自己的qq或者微信。反正我是这样😜 甚至很多都是设置了的自动登录。我没有!我怕忘记密码😜 。
所以这次的爬取QQ邮箱,我们会考虑到,如果我们已经登录了qq。因为如果已经登录了,就不会自动跳转到输入账号和密码的界面,而是这个
所以我们就来改动一下吧!
通常出现已有账号登录的情况,我们是直接点击我们的头像,就可以进行登录了。
我们还是老操作,f12定位
然后我们发现,定位后的span标签的id是‘img_out_qq号’,这时我们后续为了代码可以灵活一点,可以’img_out’+user。
在这里是有两种情况的一种已经登录过qq我们就要点击头像,另一种是我们的没有登录就需要selenium模拟键盘输入账号和密码,所以我们判断一下网页是在哪一个界面下。
if driver.find_element_by_id(wwd):
driver.find_element_by_id(wwd).click()
else:
driver.find_element_by_id("u").send_keys(user)
driver.find_element_by_id("p").send_keys(pwd)
driver.find_element_by_id("login_button").click()
time.sleep(2)
driver.find_element_by_id("folder_1").click()
driver.switch_to.frame("mainFrame")#切换窗口
登录之后,点击收件箱,就是解析的问题了。 上一篇我用的是Xpath解析的,有同学可能不怎么明白 这次 呢我们就用selenium解析。