极验滑块验证的使用

Posted 二郎神

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了极验滑块验证的使用相关的知识,希望对你有一定的参考价值。

 

# 爬取河南企业信用信息公示系统为案例
# 案例网址 http://gsxt.haaic.gov.cn/index.jspx

 

下面这个选项一定要勾选

极验打码要的参数

 

 要爬取数据所在的页面

 

 

 根据上面的截图然后找到相对应的菜蔬  然后下面这个代码就可以实现打印list页面的源代码 ,剩下的就是用解析器解析的部分。

 

 

import requests
import json
from urllib.parse import quote
class Qy():
    def __init__(self):
        self.headers = {\'User-Agent\': \'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (Khtml, like Gecko) Chrome/66.0.3359.139 Safari/537.36\'}
        self.req = requests.session()


    def get_html(self,url):
        try:
            response = self.req.get(url,headers=self.headers)
            if response.status_code == 200:
                return response.text
            return None
        except:
            print(\'获取challenge和ht信息失败\')

    def parse_html(self,html):
        html_dic = json.loads(html)
        url = "http://jiyanapi.c2567.com/shibie?user=username&pass=123456&return=json&ip=&gt=" + html_dic[\'gt\'] + "&challenge=" + html_dic[\'challenge\']
        return self.get_html(url)

    def get_page_html(self,html_json):
        url = \'http://gsxt.haaic.gov.cn/validateSecond.jspx\'
        html_dic = json.loads(html_json)
        data = {
            \'searchText\': \'中国\',
            \'geetest_challenge\': html_dic[\'challenge\'],
            \'geetest_validate\': html_dic[\'validate\'],
            \'geetest_seccode\': html_dic[\'validate\']+\'|jordan\',
        }
        html = self.req.post(url,headers=self.headers,data=data).text
        html_di = json.loads(html)
        name = quote(quote(\'中国\'))
        url1 = \'http://gsxt.haaic.gov.cn/\'+html_di[\'obj\']+\'&searchType=1&entName=\'+name
        return self.req.get(url,headers=self.headers).text



def main():
    qy = Qy()
    # 获取challenge和ht信息
    html = qy.get_html(\'http://gsxt.haaic.gov.cn/registerValidate.jspx\')
    # 使用打码平台进行打码
    html_json = qy.parse_html(html)
    # 获取网页的数据
    data = qy.get_page_html(html_json)
    # 打印网页的数据
    print(data)


if __name__ == \'__main__\':
    main()

 

 

 

 

以上是关于极验滑块验证的使用的主要内容,如果未能解决你的问题,请参考以下文章

Python爬虫之selenium+极验滑块破解

手把手教你玩转极验滑块JS逆向系列:滑块底层图片还原

手把手教你玩转极验滑块JS逆向系列:滑块底层图片还原

手把手教你玩转极验滑块JS逆向系列:滑块底层图片还原

手把手教你玩转极验滑块JS逆向系列:滑块底层图片还原

七步完美解决问题python爬虫极验滑动验证码问题