欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python驗證碼截取識別代碼實例

 更新時間:2020年05月16日 10:07:56   作者:肖瘋子  
這篇文章主要介紹了Python驗證碼截取識別代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

1.環(huán)境

  • python3.7
  • selenium
  • webdriver
  • PIL
  • Image

2.下面demo是截取“去哪兒”官網的驗證碼

# -*- coding=utf-8 -*-
# CodeDemo.py
# PyCharm  Slade  2019/7/20
# import selenium,os
from selenium import webdriver
from PIL import Image


def aucthcode(coderddr):
  """
  傳參驗證碼的Xpath
  頁面全圖為'code.png'     命名這個你們開心就好
  驗證碼截圖名為"aucthcode.png
  :param coderddr:
  :return:
  """
  
  driver.save_screenshot('code.png')
  element = driver.find_element_by_xpath(coderddr)    # 獲取驗證碼的div位置
  left = element.location['x'] +280
  top = element.location['y'] +81
  right = left + element.size['width'] + int(13)
  bottom = top + element.size['height'] + int(2)
  img = Image.open('code.png')
  imgcod = img.crop((left,top,right,bottom))     # 根據(jù) div的長寬截圖
  imgcod.save('aucthcode.png')
  print((left,top,right,bottom))


if __name__ == '__main__':
  driver = webdriver.Chrome()
  driver.maximize_window()
  driver.get('https://user.qunar.com/passport/login.jsp')
  driver.find_element_by_css_selector('a.pwd-login').click()
  aucthcode('//*[@id="captcha"][1]/p[1]')
  driver.quit()


  # img = Image.open('code.png')
  # imgcod = img.crop((1392,393,1490,425))     # 根據(jù) div的長寬截圖
  # imgcod.save('aucthcodeN.png')

注:代碼中的驗證碼截取坐標,不一定是標準的,我是通過獲取元素的坐標為基礎參數(shù),然后在main里面進行調試最終得到我適用的坐標

運行效果展示 code.png

運行截取的驗證碼效果展示 aucthcode.png

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

最新評論