实战型爬虫采集Prompt工程优化提示词
这是一份专为数据工程师和爬虫开发者设计的结构化提示词方案,聚焦于通过Prompt工程优化自动化采...
提示词内容
复制角色定义与任务定位
请以“资深数据采集架构师”的身份,运用本方案。你的核心目标是:设计并优化用于指导大语言模型(如GPT、Claude等)生成或调试网络爬虫代码的Prompt指令,旨在提升数据采集任务的自动化程度、代码健壮性、反爬绕过能力及数据结构化效率。
适用场景
- 需要大语言模型协助编写或优化Python(Requests, Scrapy, Selenium等)爬虫脚本。
- 针对复杂网站结构(如动态加载、登录验证、验证码)设计采集策略。
- 将模糊的数据需求转化为精准、可执行的爬虫指令与数据清洗流程。
- 对现有爬虫代码进行调试、错误修复与性能优化(去重、代理、并发控制)。
- 制定标准化、可复用的爬虫任务描述模板,用于团队协作或批量任务生成。
核心提示词(可直接使用)
- 基础框架:“请扮演一位Python爬虫专家,为我编写一个爬取[目标网站URL]上[具体数据描述,如:商品价格、标题、评论]的脚本。要求使用[库名称,如:Scrapy]框架,并处理可能的[JavaScript渲染/登录会话/分页]问题。最终数据请以JSON格式输出。”
- 策略优化:“针对目标网站可能存在的[IP限制/请求头检测/行为验证]等反爬机制,请在代码中集成相应的应对策略,例如:随机User-Agent、代理IP池、请求延迟设置。”
- 结构化增强:“在提取数据后,请增加数据清洗步骤:去除HTML标签、处理空白字符、将字符串格式的数字转换为数值类型,并确保日期时间格式统一为‘YYYY-MM-DD HH:MM:SS’。”
- 错误处理:“请在代码中加入完善的异常处理(如网络超时、解析失败、状态码非200)和日志记录功能,确保程序在长时间运行时具备鲁棒性。”
风格方向
- 指令风格:采用技术文档式指令,清晰、精确、无歧义。避免文学化或模糊描述。
- 代码风格:要求生成符合PEP 8规范的、模块化的、注释清晰的工业级代码。
- 输出风格:强调输出的结构化(JSON、CSV、数据库Schema)和可读性,便于后续直接进行数据分析。
构图建议(逻辑结构)
- 第一层(目标定义):明确指定网站、数据字段、数据量级(如前100页)。
- 第二层(技术选型):指定编程语言、核心库、是否需要无头浏览器。
- 第三层(策略层):定义反爬策略、请求频率控制、数据存储方式(文件/数据库)。
- 第四层(后处理层):规定数据清洗规则、去重逻辑、错误重试机制。
细节强化
- 氛围/环境描述:模拟“高可靠性的自动化生产环境”,强调稳定、高效、低干扰。
- 关键元素:在Prompt中明确包含:超时时间(timeout)、重试次数(retries)、自定义请求头(headers)、Cookies管理、XPath/CSS选择器示例。
- 材质/质感:追求代码的“工业级质感”——即具备完整的日志系统、配置化参数、易于扩展的函数设计。
使用建议
- 分步迭代:对于复杂任务,采用“分步Prompt”策略。先让模型输出爬虫设计思路,再基于思路生成具体代码。
- 提供示例:在Prompt中粘贴一小段目标网页的HTML源码,并指出需要提取的数据所在标签,可极大提升模型解析准确性。
- 约束输出:明确要求模型“只输出代码,并附上简要的步骤说明”,避免生成多余的解释性文本。
- 持续优化:将模型生成的代码在实际环境中运行,将遇到的错误或新需求(如网站改版)作为后续Prompt的输入,进行迭代优化。