破解滑动验证码,成功率在百分之九十九

破解滑动验证码

使用python破解滑动验证码后获取cookie, 用于爬取数据,这里是获取到cookie存到redis,不费话了,上代码

import re
import redis
from selenium.webdriver.chrome.options import Options
#from urllib.request import urlretrieve
from PIL import Image
from selenium.webdriver.common.action_chains import ActionChains
import pymysql
from urllib.request import urlretrieve
import json
import random
import time
from selenium import webdriver
from ctypes import *
import requests
from novel_spider.config import mysql
from novel_spider.config import redis as rdsconfig


class yuewen():

    """
    初始化属性,传入url地址,驱动路径,浏览器窗口最大化,伪造ua
    """
    def __init__(self):
        self.url = 'https://open.yuewen.com/'

    """
    开启webdriver服务
    """
    def new_browser(self):
        chrome_options = Options()
        #chrome_options.add_argument("--no-sandbox")
        #chrome_options.add_argument('--disable-dev-shm-usage')
        #chrome_options.add_argument('--disable-gpu')
        #chrome_options.add_argument('--headless')
        self.driver = webdriver.Chrome(options=chrome_options)

    """
    关闭webdriver服务
    """
    def close_browser(self):
        self.driver.quit()

    """
    输入用户名,适应linux系统
    """
    def input_username_password(self,account, password):
        self.driver.get(self.url)
        time.sleep(1)
        self.driver.find_element_by_class_name('op-button-sign').click()  # 找到class为op-button-sign的元素点击
        time.sleep(1)
        self.driver.find_element_by_xpath("//p[contains(text(),'账号登录')]").click()
        self.driver.find_element_by_class_name('el-input__inner').send_keys(account)
        self.driver.find_element_by_name('password').send_keys(password)
        time.sleep(3)
        self.driver.find_element_by_xpath("//span[contains(text(),'登录')]").click()


    """
    获取验证码阴影图和原图
    :return:
    """
    def get_img(self):
        self.driver.switch_to.frame('tcaptcha_iframe')
        time.sleep(3)
        # 获取有阴影的图片
        src = self.driver.find_element_by_id
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值