1. 企查查爬虫逆向工程解析
作为一名长期从事数据采集的开发者,我最近逆向分析了企查查的加密机制,发现其核心防护在于动态生成的key、value和x-pid三个关键参数。这些参数通过多层加密算法组合而成,本文将详细拆解其生成逻辑。
企查查作为企业信息查询平台,其反爬策略在业内属于中高级难度。通过分析网页请求,我们发现其API接口需要携带特殊的请求头才能获取数据。这些请求头参数包括:
x-pid:页面动态生成的标识符key:基于HMAC-SHA512生成的加密密钥value:包含请求路径和参数的签名值
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 核心加密机制实现
2.1 获取x-pid参数
x-pid实际上是页面中的window.pid变量,可以通过正则表达式从页面源码中提取:
python复制def get_window_pid(session):
"""从批量查询页面爬取window.pid的值"""
batch_page_url = "https://www.qcc.com/web/project/batchList?nnm=byticket_spider&batchType=0"
try:
response = session.get(batch_page_url, timeout=10)
response.raise_for_status()
page_source = response.text
pid = re.findall("window\.pid='(\w+)", page_source)
if pid:
return pid[0]
else:
print("未找到window.pid,请检查页面源码")
return None
except Exception as e:
print(f"获取window.pid失败: {e}")
return None
注意:x-pid与访问URL绑定,同一URL多次请求时pid通常不变,但不同URL会生成不同的pid值。
