python+selenium 自动登录QQ邮箱例子

1、安裝selenium

命令行:pip install selenium 敲回车
2、下載chromedriver插件,對應自己的版本,链接在此:

http://chromedriver.storage.googleapis.com/index.html

直接放在Python的Scripts目录下就可以不能配置变量了,而且也不用声明路径,注意:chrome的版本需要跟driver的版本兼容,

chrome下载地址: https://dl.lancdn.com/landian/software/chrome/m/ 

也可以将chromedirver 放到chrome.exe目录,照着下面的代码写自动登录脚本就行了。

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

driver = webdriver.Chrome()
wait = WebDriverWait(driver, 20)  #设置检查账号切换按钮超时时间
driver.get('https://mail.qq.com/cgi-bin/loginpage')
driver.switch_to.frame('login_frame')
# driver.switch_to.frame(driver.find_element_by_tag_name("iframe"))  # 4.用WebElement对象来定位
try:
    # 获取输入框
    input = wait.until(
        # 判断该元素是否加载完成
        EC.presence_of_element_located((By.CSS_SELECTOR, '#switcher_plogin'))
    )
    # 输入查询关键字
    input.click()

    # 获取搜索点击按钮
    submit = wait.until(
        # 判断该元素是否可以点击
        EC.element_to_be_clickable((By.CSS_SELECTOR, '#login_button'))
    )
    driver.find_element_by_xpath("//*[@id='u']").send_keys("改成你的QQ号")
    driver.find_element_by_xpath("//*[@id='p']").send_keys("QQ密码")
    submit.click()
except TimeoutException:
    print('exception')

driver.find_element_by_xpath("//*[@id='u']").send_keys("改成你的QQ号")

find_element_by_xpath可以在chrome浏览器中,点右键,选择copy xpath获取参数

发布了67 篇原创文章 · 获赞 9 · 访问量 10万+

猜你喜欢

转载自blog.csdn.net/robinhunan/article/details/87210221