1.怎么登录126邮箱的代码在我前面一篇文章可以看到,代码也有,只要按照虫师的代码添加几行信息即可,但是按照这里出现了一个问题,
2.怎么修改都没办法解决,后面了解到,在进入ifname以后,还需要退出ifname,才能获取当前页面的值,我们之前登陆的时候有个ifname,但是这个地方没有退出,所以一直报错,具体的代码如下
from selenium import webdriver #导入驱动
import time #导入time库
driver = webdriver.Firefox() #打开火狐浏览器
driver.get("http://www.126.com") #打开网页126
print('Before login=================================') #输出一条信息
driver.find_element_by_xpath("//*[@id='switchAccountLogin']").click() # 点击账号密码登录
title = driver.title #输出当前页面title
print(title) #打印title
now_url = driver.current_url #输出当前页面url
print(now_url) #打印url
driver.switch_to.frame(driver.find_element_by_xpath("//iframe[contains(@id,'x-URS-iframe')]")) #进入登录框的ifname里面
driver.find_element_by_xpath("//input[@name='email']").clear() #清除账号框的信息
driver.find_element_by_xpath("//input[@name='email']").send_keys('username') #输入账号
driver.find_element_by_xpath("//input[@name='password']").send_keys('password') #输入密码
driver.find_element_by_id("dologin").click() #点击登录
time.sleep(5) #等待5s
print("After login====================")
title = driver.title #输出当前页面title
print(title) #打印title
now_url = driver.current_url #输出当前页面url
print(now_url) #输出当前页面url
driver.switch_to.default_content() #跳出ifname
time.sleep(10) #等待10s
user = driver.find_element_by_xpath("//*[@id='spnUid']").text #获取用户名
print(user) #输出用户名
driver.quit #退出浏览器
driver.switch_to.default_content() 这条语句一定要记得添加!