selenium驗證碼的解決辦法


在做web自動化登錄時,每當遇到驗證碼有幾種解決方式:

1,設置萬能驗證碼

2,通過pytesser破解圖片

3,通過代碼控制等待手動輸入驗證(附代碼)

下面就是第三種方式

#coding=utf-8
from selenium import webdriver
import time
def log_in_sps(mobile='',password=''):
    if mobile and password:
        browser = webdriver.Chrome()
        url = 'https://dev-sps.xinfushe.cn/serviceLogin/serviceProviderLogin'
        browser.get(url)
        time.sleep(3)
        if browser.find_element_by_id('mobile').is_displayed():
            browser.find_element_by_id('mobile').send_keys(mobile)
            browser.find_element_by_id('password').send_keys(password)
            time.sleep(3)
            if browser.find_element_by_id('valico').is_displayed():
                print browser.find_element_by_id('valico').is_displayed()
                while True:
                    #val = browser.find_element_by_id('valico').text
                    val = raw_input('Input valico:')
                    if val and len(val)>0:
                        print val
                        browser.find_element_by_id('valico').send_keys(val)
                        break
                    pass
                pass
            browser.find_element_by_id('loginsub').click()
            print 'log in'
            time.sleep(3)
            browser.quit()
if __name__=='__main__':
    log_in_sps(mobile='13146751613',password='a111111')

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM