运⾏报错如下:
import cv2
ModuleNotFoundError: No module named 'cv2'
解决⽅案:安装有点慢
import cv2安装opencv-python
pip install opencv-python
python34版本的安装运⾏不成功
python38版本的可以
运⾏报错如下:
from PIL import Image as Im
ModuleNotFoundError: No module named 'PIL'
验证码自动输入解决⽅案:
点开file->settings->project interpreter,双击pip,搜索pillow,点击pillow,左下⾓会有install,安装成功即可。完整代码: from selenium import webdriver
import time
from slideCode import SlideVerificationCode #引⼊类⽅法⽂件
# 第⼀步:打开浏览器
driver = webdriver.Chrome()
# 第⼆步:访问QQ空间登录页⾯ qzone.qq/ url="qzone.qq/"
<(url)
# 第三步:点击账号,密码登录
# 1.点击切换iframe
# 2.定位iframe
# 3.点击账号密码登录
driver.switch_to.frame("login_frame")
account_click='//a[contains(text(),"帐号密码登录")]'
driver.find_element_by_xpath(account_click).click()
# 第四步:输⼊账号密码
# 1.定位账号输⼊框,输⼊账号
user='//input[@id="u"]'
pwd='//input[@id="p"]'
driver.find_element_by_xpath(user).send_keys("15xxxxxx8")
driver.find_element_by_xpath(pwd).send_keys("testxxxx")
# 第五步:点击登录
login_btn='//input[@id="login_button"]'
driver.find_element_by_xpath(login_btn).click()
#第六步:滑动图像验证码,⽤到图像识别技术
# 6.1创建⼀个滑动验证的对象
sli = SlideVerificationCode()
# 切换到验证码所在的iframe
driver.switch_to.frame(driver.find_element_by_xpath('//*[@id="tcaptcha_iframe"]')) # 定位滑块图⽚
slider_ele = driver.find_element_by_xpath('//*[@id="slideBlock"]')
# 定位验证码背景图
background_ele = driver.find_element_by_xpath('//*[@id="slideBg"]')
distance = _element_slide_distance(slider_ele, background_ele)
# print("滑动的距离为:", distance)
# 根据页⾯图⽚缩放⽐调整滑动距离
distance = distance *280/680-31
# 6.3模拟滑动⿏标
btn = driver.find_element_by_xpath('//*[@id="tcaptcha_drag_thumb"]')
sli.slide_verification(driver,btn,distance)
driver.close()