AI写PPT提示词里加入企业VI的写法
2026-06-20 3361809
2026-06-20 0
CodeGeex 可生成带随机化和平台适配的请求头逻辑以绕过网站校验,需在 Python 3.8~3.11 环境中执行 pip install codegeex 安装,安装前须卸载旧版 transformers。

你需要从网页抓取数据,但目标网站校验请求头中的 User-Agent、Accept-Language 等字段,直接用 requests.get(url) 会返回 403 或空响应;CodeGeex 能帮你快速生成可复用、带随机化和平台适配的请求头构造逻辑,无需手动维护浏览器指纹列表。
执行 pip install codegeex,这一步必须在 Python 3.8~3.11 环境中完成,低版本会因 torch 兼容性报错。【安装前请确认已卸载旧版 transformers<4.35】
导入模型时指定 device="cpu" 即可运行,GPU 非必需;若显存不足,强行设 device="cuda" 会导致 RuntimeError: CUDA out of memory。
向 CodeGeex 输入一段清晰、带约束条件的中文提示:
“写一个 Python 函数 get_headers(),返回 dict 类型的请求头。要求:User-Agent 必须是 Windows Chrome 最新稳定版(如 Chrome/126.0.6478.127),Accept-Language 固定为 zh-CN,zh;q=0.9,Referer 设为 https://example.com/,不包含 Connection 或 Cache-Control 字段。”
调用 model.generate(prompt, max_length=512) 后,输出结果中提取 def get_headers(): 开头的代码块即可,无需人工补全缩进或语法。
方法一:用预置 UA 池 + random.choice
先定义 ua_list = ["Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36", ...],共 8 条主流 Windows Chrome UA 字符串。
函数内部用 random.choice(ua_list) 获取 UA,再拼接其余固定字段——这样每次调用 get_headers() 返回的 UA 都不同,能绕过基础反爬。
方法二:用 fake_useragent 库动态生成(需额外 pip install fake-useragent)
初始化 ua = UserAgent(os=["windows"], browsers=["chrome"], min_version=120),调用 ua.chrome 即可获取真实 UA 字符串;注意首次运行会自动下载 json 文件到 ~/.fake_useragent.json,离线环境无法使用。
【fake_useragent 在国内服务器上常因访问 http://useragentstring.com/ 超时而卡死,建议优先用方法一】
第一步:用 requests.session() 创建会话对象 s
第二步:调用 get_headers() 获取基础头字典
第三步:手动更新 s.headers,追加 'Referer': 'https://target-site.com/list/' 和 'Cookie': 'sessionid=abc123; csrftoken=xyz789'
第四步:用 s.get("https://target-site.com/api/data", timeout=10) 发起请求——此时 headers 已自动携带全部字段,无需每次传 headers 参数。
这一步的关键在于 session 复用:后续所有 .get() 或 .post() 都继承该 headers,省去重复构造成本。