python爬虫-获取headers(报文头)关键参数实例小记

注意!!!!某XX网站逆向实例仅作为学习案例,禁止其他个人以及团体做谋利用途!!!

第一步:请求页面,得到响应。建议首次请求时headers内容都带着,调试的时候根据情况将headers中的参数进行注释,来确定是否为headers的参数或者formdata 参数影响 响应结果。

响应结果:

5分钟后相同参数再次请求

通过排查headers中的 X-Apikey参数为关键参数。

第二步:全网站搜索X-Apikey 参数。但是该参数在js 文件里只有一个,且是个常量,这时候可以看到有个r.Z.getApiKey() ,通过对getApiKey 查找可以看到一些关键信息

getApiKey 相关信息 ,通过查看确定是生产X-ApiKey的关键信息

第三步:打断点(debug),注意由于是找headers的参数,因此断点打完后要去掉cookie重新请求。并且将断点打在X-ApiKey 的附近会出现断点不起作用,这时候可以考虑在在getApiKey 的附近或者该js 文件中搜索headers:注意!!!需要耐心等待。加载时间有点长。

第四步:执行encryptApiKey() 函数

第五步:执行**encryptTime()**函数

第六步:执行**comb()**函数

注意这块比较坑,comb函数传参时 是e,t。 但是在接收参数显示是t, e。 不要被迷惑了。就按照函数comb(e,t) 这种方式

这里可以看到 最后返回一个window.btoa() ,这里的**btoa()**是base64

最后代码展示:

python 复制代码
# -*- coding:utf-8 -*-
# @Time : 2023/7/13 18:00
# @Author: 水兵没月
import base64
import random
import time

import requests
# LWIzMWUtNDU0Ny05Mjk5LWI2ZDA3Yjc2MzFhYmEyYzkwM2NjfDI3OTk4MzYwOTkxOTU2Mzg=
#  -b31e-4547-9299-b6d07b7631aba2c903cc|2799836099195638
#  -b31e-4547-9299-b6d07b7631ab a2c903cc
API_KRY = 'a2c903cc-b31e-4547-9299-b6d07b7631ab'
# encryptApiKey===e
API_KRY_0 = API_KRY[8:]+API_KRY[:8]

# encryptTime===t
t = int(time.time()*1000)
t_0 = str(1*t+1111111111111)

n = random.randint(0, 9)
r = random.randint(0, 9)
o = random.randint(0, 9)

e = t_0+str(n)+str(r)+str(o)

# comb
comb_n = API_KRY_0+"|"+e
x_api = base64.b64encode(comb_n.encode('utf-8')).decode('utf-8')
print(x_api)



headers = {
    'User-Agent':'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36',
    'X-Apikey':x_api,
}

s = requests.session()
url = 'https://XXXXXXXXXXXXX'    # 请求链接
res = s.get(url=url, headers=headers)
res.encoding='utf-8'
print(res.text)

仅作为笔记记录,如有问题请各位大佬来指导

相关推荐
985小水博一枚呀11 小时前
【对于Python爬虫的理解】数据挖掘、信息聚合、价格监控、新闻爬取等,附代码。
爬虫·python·深度学习·数据挖掘
大神薯条老师13 小时前
Python从入门到高手5.1节-Python简单数据类型
爬虫·python·深度学习·机器学习·数据分析
镜花照无眠17 小时前
Python爬虫使用实例-mdrama
开发语言·爬虫·python
小白学大数据1 天前
User-Agent在WebMagic爬虫中的重要性
开发语言·爬虫·http
大神薯条老师1 天前
Python从入门到高手4.3节-掌握跳转控制语句
后端·爬虫·python·深度学习·机器学习·数据分析
wdxylb2 天前
Pyhton爬虫使用Selenium实现浏览器自动化操作抓取网页
爬虫·selenium·测试工具
菜鸡中的奋斗鸡→挣扎鸡2 天前
初始爬虫11
开发语言·爬虫·python
凡人的AI工具箱2 天前
15分钟学 Python 第35天 :Python 爬虫入门(一)
开发语言·数据结构·人工智能·后端·爬虫·python
新缸中之脑2 天前
ScrapeGraphAI 大模型增强的网络爬虫
爬虫
易辰君2 天前
python爬虫 - 初识爬虫
开发语言·爬虫·python