Python针对Cloudflare的假5秒盾验证逆向

这篇具有很好参考价值的文章主要介绍了Python针对Cloudflare的假5秒盾验证逆向。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

最近Friendtech挺火的,所以想写一个全自动的脚本,包含自动买卖+推特账号粉丝数量检测。按理说这种东西属于很简单的爬虫,啪啪啪requests发个get请求就数据到手。

如果这么简单,那就真的谢天谢地了😂😂

先说说遇到的坑。

1.返回数据中包含“Just a moment"内容的验证页面。
以前没见过这种,然后f12打开查看。怪了,最开始没有验证的时候,请求方式是get;一旦有了这个"Just a moment"的验证页面,再f12打开查看,页面的请求方式就变成了post,而且包含一堆数据。如下。
请求方式是:get

网页请求just a moment...,python,beautifulsoup
post的找不到了,不放了。
这把我搞懵逼了,没见过这种啊。
最开始我想的是多弄一些cookie,referer,usr-agent这些,随机选取让脚本跑。**但是总是当时正常,隔天就失效。查看返回数据,内容包含"Just a moment"的网页验证。**有点头疼。

然后针对get和Post会切换的问题,所以我想要不暴力解决把。
先try get方法,等解析数据报错的时候except切换到Post方法,header,cookie,referer都全部切换。

try:
        re = requests.get(u, headers=h2)
        # print(re.status_code)
        sp = BeautifulSoup(re.text, 'html.parser')
        # print(sp)
        ds = sp.find_all('table', class_='table table-hover')[0].find('tbody').find_all('tr')[:5]
    except BaseException as e:
        print('使用了Post方法')
        re = requests.post(u, headers=h2)
        print(f'post方法的返回码{re.status_code}')
        sp = BeautifulSoup(re.text, 'html.parser')
        # print(sp)
        ds = sp.find_all('table', class_='table table-hover')[0].find('tbody').find_all('tr')[:5]
        # print(ds)
    a_l = []

然后实例化方法运行,ok,pycharm里测试运行正常,然后pyinstaller打包exe本机测试可以运行。
我满心欢喜的把exe包复制到win 2012服务器上运行,报错报错报错,草!
看来这种办法行不通。😢😢

那只能换方法了。谷歌大法开启,搜just a moment,5秒盾。然后看到一篇猛文。
(链接:https://m.163.com/dy/article/I0C2IR0A05561QYO.html?spss=adap_pc)
这跟我的问题不是一毛一样吗?也是假5秒盾。
ok,开搞。
装库,撸代码。

import time
from curl_cffi import requests
from bs4 import BeautifulSoup


def ooo():
    bs_u = 'https://basescan.org'
    url = 'https://basescan.org/address/0xcf205808ed36593aa40a44f10c7f7c2f67d4a4d4'
    re = requests.get(url=url, impersonate="chrome101", verify=False)
    sp = BeautifulSoup(re.text, 'html.parser')
    # print(re)
    ds = sp.find_all('table', class_='table table-hover')[0].find('tbody').find_all('tr')[:5]
    print(ds)
    a_l = []
    for t in ds:
        tp = t.find_all('td')[2].text
        vl = t.find_all('td')[9].text
        if tp == 'Buy Shares' and vl == '0 ETH':  # 最新注册用户
            buy = t.find_all('td')[6].text
            a_l.append(buy)
        elif tp == 'Sell Shares':  # 非新注册用户
            tx_u = bs_u + '/tx/' + t.find_all('td')[1].text
            re2 = requests.get(tx_u, impersonate="chrome101", verify=False)
            sp2 = BeautifulSoup(re2.text, 'html.parser')
            sp2_li = sp2.find_all('ul', id='wrapperContent')[0].find_all('li')[2]
            addr_sell = sp2_li.find('span', class_="hash-tag text-truncate tooltip-address").text  # 获取被卖的地址
            if '000003125 ETH' in str(sp2_li):
                a_l.append(addr_sell)
    print(a_l)
    return a_l


while 1:
    try:
        ooo()
    except BaseException as e:
        print(e)
    time.sleep(1200)

pycharm运行,正常,能获取到数据;pyinstaller打包,自己电脑上运行,正常获取到数据;复制到win 2012服务器上,正常获取到数据!!!!终于成功了!!!!哈哈哈哈哈哈哈哈哈😂😂😂😂😂

我尼玛,困扰我几天了。不知道后续有没有幺蛾子,目前看起来是能运行的。


curl_cffi这个库,能破解大部分这种requests.get后返回数据包括"Just a moment"的这种网页验证。
详细原理后续再慢慢研究,最近手头工作忙。

最后放上程序正常运行的美照。
网页请求just a moment...,python,beautifulsoup


requests的速度难蚌,已经改用wss节点,也不用破解验证网页了,速度也提升了很多倍😂文章来源地址https://www.toymoban.com/news/detail-811625.html

到了这里,关于Python针对Cloudflare的假5秒盾验证逆向的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Python Selenium绕过Cloudflare抓取网页

    Cloudflare和很多其他网站一样会检测访问是否为Selenium bot,其中一项为检测Selenium运行时出现的特有js变量。 这里主要包括了是否含有\\\"selenium\\\"/ \\\"webdriver\\\"的变量或者含有\\\"$cdc_\\\"/\\\"$wdc_\\\"的文件变量。 每个driver的检测机制会不一样,此处给出的方案基于chromedriver。 1. Undetected-chromedri

    2024年02月11日
    浏览(47)
  • 网页端逆向接口Claudeapi代码分享Python版,来源github

    文件:claude_api.py 源代码如下: 我们也可以通过pip install cluade_api,进行安装。 在 Python 脚本中导入 claude_api 模块: 接下来,您需要通过提供您的 Claude AI cookie 来创建 Client 类的实例: 您可以从浏览器的开发者工具网络选项卡获取cookie(查看任何claude.ai请求检查cookie,复制整

    2024年02月07日
    浏览(48)
  • JS逆向解密秀动app(网页接口)实现抢票【python异步请求】

       HI,上一期我出了js逆向解析五邑大学的AES加密实现模拟登录,后台不少人想让我去解析一下秀动app,去实现抢票。我看因此本文就是介绍如何去实现js逆向解析秀动网页端口实现抢票。 (本文拿最近的场:广州姜云升2022巡演) 一.逆向分析过程 首先,我们想要进入下单的

    2024年01月23日
    浏览(30)
  • python之app逆向破解headers中的Authorization 身份验证 AES

    下载好app 贝壳 2018-5-2 版本 1.还是先抓包 注册入口 2.用jadx-gui打开 直接用jadx-gui打开,因为没有加壳 并搜索Authorization 点击右键 查找用例 3.开始Hook 从以下可以看出: 由 Appid + COLON_SEPARATOR + c 组成的,最后 Base64 所以从第一个入参开始跟踪 String encodeToString = Base64.encodeToStri

    2024年02月03日
    浏览(29)
  • CloudFlare指定IP 网页加载太慢 加快加载速度

    前段时间开始搭建自己的个人网站, 为了保护小网站免受DDoS之灾,并且隐藏网站的真实IP地址,因此决定使用CloudFlare CDN。(如果你的服务器在国内或者是香港等地区,而访问用户也是在国内的话,使用了CloudFlare CDN后,实际起到的是减速作用;因为联通和电信走的是美西的

    2024年02月21日
    浏览(49)
  • Python网络爬虫逆向分析爬取动态网页、使用Selenium库爬取动态网页、​编辑将数据存储入MongoDB数据库

    目录 逆向分析爬取动态网页 了解静态网页和动态网页区别 1.判断静态网页  2.判断动态网页  逆向分析爬取动态网页 使用Selenium库爬取动态网页 安装Selenium库以及下载浏览器补丁 页面等待  页面操作 1.填充表单 2.执行JavaScript 元素选取 Selenium库的find_element的语法使用格式如下

    2024年02月15日
    浏览(78)
  • ChatGPT无限卡Cloudflare 验证你是真人

    我的情况是这样 在Chrome里,打开chatGPT的网页,会无限验证你是真人 打开无痕浏览页面可以正常登录 github上有一个油猴脚本,KeepChatGPT,可以解决这个问题,至少目前我使用了两天,还没再次出现过无限验证你是真人。 以下是github链接: https://github.com/xcanwin/KeepChatGPT 也可以

    2023年04月27日
    浏览(54)
  • Cloudflare5s盾破解|爬虫自动验证|解决方案

    一、什么是Cloudflare5s盾 Cloudflare是一个网站加速和安全服务提供商。Cloudflare  5s盾是指网站防御模式,它可以防止恶意流量和攻击,如DDoS、SQL注入、XSS等,保护网站免受恶意攻击和流量泛滥带来的服务中断或数据泄漏等问题。此外,Cloudflare  5s盾还可以通过Web应用程序防火

    2024年02月12日
    浏览(32)
  • 针对“扫雷“和“植物大战僵尸“游戏,分析,扫描,阳光值,植物,金币,僵尸的分析逆向

    《软件逆向分析》 2022年9月 [一、实验工具介绍 3](#一实验工具介绍) [二、针对\\\"扫雷\\\"游戏 3](#二针对扫雷游戏) [2.1分析\\\"初级\\\"、\\\"中级\\\"和\\\"高级\\\"的棋盘内存地址范围 3](#分析初级中级和高级的棋盘内存地址范围) [2.2找出\\\"雷数\\\"、\\\"笑脸\\\"和\\\"计时器\\\"的内存地址 9](#找出雷数笑脸和计时

    2024年02月07日
    浏览(32)
  • java爬虫遇到网页验证码怎么办?(使用selenium模拟浏览器并用python脚本解析验证码图片)

            笔者这几天在爬取数据的时候遇到了一个很闹心的问题,就是在我爬取数据的时候遇到了验证码,而这个验证码又是动态生成的,尝试了很多方法都没能绕开这个验证码问题。         我的解决方案是:使用selenium模拟浏览器行为,获取到动态生成的验证码后用

    2024年02月09日
    浏览(57)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包