# -*- coding:utf-8 -*- from selenium import webdriver from PythonHTTP調用示例.YDMHTTP import YDMHttp #引用顯示等待 from selenium.webdriver.support.ui import WebDriverWait from PIL import Image driver = webdriver.Firefox() driver.get("https://ics.autohome.com.cn/passport/account/login") # 找到用戶名輸入 username = WebDriverWait(driver,10).until(lambda driver: driver.find_element_by_id("UserNameDealer")) username.send_keys("元信汽車") # 找到密碼框輸入 password = WebDriverWait(driver, 10).until(lambda driver:driver.find_element_by_id("PasswordDealer")) password.send_keys("123456") # 找到驗證碼標籤 captcha = WebDriverWait(driver, 10).until(lambda driver:driver.find_element_by_id("imgValidCodeDealer")) captcha.screenshot(filename="captcha.png") # 截圖保存的另外一個函數 # driver.save_screenshot("page.png") # left = captcha.location["x"] # top = captcha.location["y"] # right = captcha.location["x"] + captcha.size["width"] # bottom = captcha.location["y"] + captcha.size["height"] # # # # img = Image.open("page.png") # img = img.crop((left,top,right,bottom)) # img.save("captcha.png") ydm = YDMHttp() ydm.login() cid,result = ydm.decode("captcha.png",5000,10) print(result) driver.find_element_by_id("checkCodeDealer").send_keys(result) WebDriverWait(driver,10).until(lambda driver:driver.find_element_by_id("btnDealer")).click()