#coding=utf-8
from
PIL import Image
import pytesseract
from
selenium import webdriver
url=
'http://192.168.0.178:8080/WebGis/'
driver = webdriver.Chrome(
'chromedriver.exe'
)
driver.maximize_window()
#將浏覽器最大化,以獲取更清晰的校驗碼圖片
driver.
get
(url)
driver.save_screenshot(
'f://gps.png'
)
#截取當前網頁,該網頁有我們需要的驗證碼
imgelement = driver.find_element_by_id(
'verifyCodeImg'
)
#通過id定位驗證碼
location = imgelement.location
#獲取驗證碼的x,y軸
size = imgelement.size
#獲取驗證碼的長寬
rangle=(
int
(location[
'x'
]),
int
(location[
'y'
]),
int
(location[
'x'
]+size[
'width'
]),
int
(location[
'y'
]+size[
'height'
]))
#寫成我們需要截取的位置坐標
i=Image.open(
'f:gps.png'
)
#打開截圖
verifycodeimage=i.crop(rangle)
#使用Image的crop函數,從截圖中再次截取我們需要的區域
verifycodeimage.save(
'f://verifycodeimage.png'
)
image=Image.open(
'f:verifycodeimage.png'
)
#print image
vcode=pytesseract.image_to_string(image).strip()
#使用image_to_string識別驗證碼
print vcode