处理爬虫是返回setCookie的一段js获取acw_sc__v2的方法

2023-05-16

处理爬虫是返回setCookie的一段js获取acw_sc__v2的方法

原文链接: setCookie JS反爬虫处理

处理代码

import requests
import re
import base64
from urllib import parse
headers = {
    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36'
                  ' (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36',
}


def get_script_data(base_url):
	'''
	获取js相应参数
	'''
    response = requests.get(base_url, headers=headers)
    arg1 = re.search("arg1='([^']+)'", response.text).group(1)
    return arg1



def hexXor(_0x4e08d8, _0x23a392):
	'''
	对数据进行hexXor处理
	'''
    _0x5a5d3b = ''
    _0xe89588 = 0x0
    while _0xe89588 < len(_0x23a392) and _0xe89588 < len(_0x4e08d8):
        _0x401af1 = int(_0x23a392[_0xe89588: _0xe89588 + 0x2], 16)
        _0x105f59 = int(_0x4e08d8[_0xe89588: _0xe89588 + 0x2], 16)
        _0x189e2c = hex(_0x401af1 ^ _0x105f59)
        if len(_0x189e2c) == 0x1:
            _0x189e2c = '\x30' + _0x189e2c
        _0x5a5d3b += _0x189e2c[2:]

        _0xe89588 += 0x2
    return _0x5a5d3b


def unsbox(arg):
	'''
	对数据进行加密处理
	'''
    _0x4b082b = [0xf, 0x23, 0x1d, 0x18, 0x21, 0x10, 0x1, 0x26, 0xa, 0x9, 0x13, 0x1f, 0x28, 0x1b, 0x16, 0x17, 0x19, 0xd,
                 0x6, 0xb, 0x27, 0x12, 0x14, 0x8, 0xe, 0x15, 0x20, 0x1a, 0x2, 0x1e, 0x7, 0x4, 0x11, 0x5, 0x3, 0x1c,
                 0x22, 0x25, 0xc, 0x24]
    _0x4da0dc = [''] * 40
    _0x12605e = ''
    for _0x20a7bf in range(0, len(arg)):
        _0x385ee3 = arg[_0x20a7bf]
        for _0x217721 in range(0, len(_0x4b082b)):
            if _0x4b082b[_0x217721] == _0x20a7bf + 0x1:
                _0x4da0dc[_0x217721] = _0x385ee3
    _0x12605e = ''.join(_0x4da0dc)
    return _0x12605e


if __name__ == '__main__':
	base_url='需要获取acw_sc__v2的网址'
    arg1 = get_script_data(base_url)
    key = '3000176000856006061501533003690027800375'
    _0x23a392 = unsbox(arg1)
    arg2 = 'acw_sc__v2=' + hexXor(key, _0x23a392)
    headers['Cookie'] = arg2
    response = requests.get(base_url, headers=headers)
    print(response.text)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

处理爬虫是返回setCookie的一段js获取acw_sc__v2的方法 的相关文章

  • 【Qt】显示文件/文件夹下所有文件的路径

    一 条件与目的 给一个正确的文件夹绝对路径 xff0c QString字符串形式 要求打印出其中所有子目录以及其下的全部文件路径 二 废多看崩 名称 xff1a 遍历显示函数 参量 xff1a path 绝对路径 方法类 xff1a QDi
  • CMD执行命令行时卡住的问题

    公司编译工程项目时用了一些bat文件以命令行的方式来自动完成编译过程 xff0c 但是发现一个问题 xff0c 执行bat的时候Windows下弹出命令行窗口 xff0c 总是会时不时出现 假死 的情况 xff0c 然后命令执行就停在那里了
  • GET、POST、PUT、DELETE请求方式的区别以及用途

    1 GET GET请求是用来获取数据的 xff0c 不对服务器的数据做任何的修改 xff0c 新增 xff0c 删除等操作 GET请求就像数据库的SELECT操作一样 xff0c 只是用来查询一下数据 xff0c 不会修改 增加数据 xff
  • 通俗易懂-对于快慢指针找到链表环入口的理解

    图1是一个链表环 xff0c 此链表有8个结点 xff0c 分别为A H 假设起点为G xff0c 快指针fast和慢指针slow都从G出发 xff0c 慢指针一次遍历一个结点 xff0c 快指针一次遍历两个结点 xff0c 无论他们走多少
  • 通俗易懂-对于归并排序的细节理解python

    首先归并排序的原理就是将一个待排序的列表分成二等份 xff0c 四等份 xff0c 八等份 直到每一份只有一个元素的时候 xff0c 然后合并 xff0c 合并的时候进行排序 听起来有点绕 不多说 上代码 span class token
  • vnc连接失败可能的方案

    vnc连接失败可能的解决方案 上图表示还没有在windows power shell里边打开端口 xff0c 在windows power shell里边输入命令打开端口 xff0c 如下图所示 xff0c 密码和端口号换成服务器提供的即可
  • No module named 'matplotlib.pyplot'; 'matplotlib' is not a package

    关于No module named matplotlib pyplot matplotlib is not a package报错 在学习matlibplot的时候运行一个 py文件出现这样的报错 xff1a No module named
  • Error tokenizing data. C error: out of memory

    用pandas读入数据的时候发现数据读入时出错了 xff0c 数据量感觉也不是很大 十万多条数据 电脑内存是8个G 报错信息为 xff1a Error tokenizing data C error out of memory 想想不对啊
  • kubeadm方式部署的k8s修改证书年限

    说明 kubeadm方式部署的k8s默认证书的年限为1一年 xff0c 当集群更新时 xff0c 证书也会更新 xff0c 如果集群每年都会更新 xff0c 那么证书年限就不用修改 但是大部分情况下 xff0c 为了保证线上环境稳定 xff
  • C++智能指针以及循环引用的解决办法

    1 为什么要使用智能指针 我们知道C 43 43 的内存管理是让很多人头疼的事情 xff0c 当我们写一个new语句时 xff0c 一般就会立即把delete语句直接也写了 xff0c 但是我们不能避免程序还未执行到delete时就跳转了或
  • Debian安装JDK的RPM包

    环境 xff1a Linux内核版本4 4 59 43 jdk1 8安装 Debian9系统 注意 xff1a 1 本文介绍的是在Debian中使用jdk的rpm包进行安装 JDK完全卸载 xff08 需要在root模式下进行操作 xff0
  • XShell 收费?5款免费且超赞的SSH工具,一个比一个香

    SSH客户端是后端程序员日常工作必备的工具之一 xff0c 一款趁手的工具也能让工作效率事半功倍 xff1b 上周的时候 xff0c 有小伙伴在群里面求免费的SSH软件 xff1b 说来也坑 xff0c 公司不允许使用PJ版的 xff0c
  • LaTeX公式按照章节编号

    LaTeX公式按照章节编号 问题 xff1a 如何让LaTeX公式按照章节编号 xff1f 答案 xff1a 在导言区加入如下语句 usepackage amsmath numberwithin equation section
  • xrdp 老版本返回上一次登录以及error - problem connecting

    连接服务器失败总结以下几种处理方式 xff1a 首先确定不是网络问题 xff0c ping ip地址 说明服务器端的网络没有问题 xff0c 通常linux开机默认监听22 3350 3389几个端口 22端口是用来连接ssh xff0c
  • C51编程23-应用篇(HC 06蓝牙模块)

    现在的手机 平板 xff0c 笔记本电脑都会自带蓝牙 本文将会介绍51单片机使用HC 06 蓝牙模块实现手机与笔记本电脑的通讯 HC 06 模块 购买HC 06模块后需要检测蓝牙模块是否是好的 xff0c 使用串口线与HC 06 模块连接起
  • BiliBili自动签到

    前情提要 emmm怎么突然会出这个教程呢 xff0c 因为俺要白嫖TX xff0c 如下图 xff1a 这是腾讯云函数公众号的一个搭建环境送礼品的活动 xff0c 截止日期 xff1a 10 9 这活动多亏群友分享 xff0c 不然俺也不知
  • RHEL8-配置IP地址

    前导 本文主要讲解如何重启RHEL 8或者CentOS 8网络以及如何解决RHEL8和CentOS8系统的网络管理服务报错 xff0c 当我们安装好RHEL 8或者 CentOS 8 xff0c 重启启动网络时 xff0c 会出现以下报错
  • redhat-8-0重置root密码

    前导 如果你忘记了RHEL 8系统中的root密码 xff0c 那就得重置root密码 xff0c 以下为在Grub启动菜单中在RHEL 8上进行手动密码恢复 引导 重启RHEL 8系统 将系统重启 xff0c 在看到grub菜单后 xff
  • Debian10使用本地ISO搭建APT源

    前言 这是个坑 xff01 是个大坑 xff01 如果在配置debian10本地源的时候 xff0c 直接使用apt cdrom add命令创建本地源后 xff0c 在安装软件的时候会有很大几率找不到软件包的位置然后报错 报错 E The
  • Debian10.x创建Raid5

    技术简介 RAID5技术是把硬盘设备的数据奇偶校验信息保存到其他硬盘设备中 RAID 5磁盘阵列组中数据的奇偶校验信息并不是单独保存到某一块硬盘设备中 xff0c 而是存储到除自身以外的其他每一块硬盘设备上 xff0c 这样的好处是其中任何

随机推荐