用ChatGPT生成可运行爬虫是批量提取网页数据最直接路径:需明确目标URL、选择器、数量、输出格式等约束,并指定User-Agent;生成后验证依赖、请求头、选择器及编码,再通过添加time.sleep(1)绕过频率反爬。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

你需要从网页批量提取商品价格、新闻标题或用户评论,但不想从零写代码、调库、处理反爬、解析HTML结构——用ChatGPT自动生成可运行的Python爬虫程序,是当前最直接可行的落地路径。
明确目标并构造精准提示词
打开ChatGPT(推荐使用GPT-4-turbo或Claude 3.5 Sonnet等支持长上下文与代码生成的模型),在对话框中输入一段结构清晰、含关键约束的自然语言指令,例如:
“请生成一个Python爬虫脚本,使用requests和BeautifulSoup,抓取https://example-news-site.com/latest 页面中所有<h2 class="title">标签内的文本,只提取前10条,保存为news_titles.txt,每行一条。不要使用Selenium,不处理JavaScript渲染内容,忽略robots.txt限制,但需添加User-Agent头。”
这一步不能只说“帮我写个爬虫”,必须包含:目标URL、数据定位方式(CSS类名/标签名)、数量限制、输出格式、禁用技术栈、必要请求头。缺少任一要素,生成的代码大概率无法直接运行。
【必须指定User-Agent,否则多数网站返回403】
验证并精修生成的代码
方法一:直接运行检查基础可用性
复制ChatGPT返回的完整.py代码,在本地Python环境(建议3.9+)中执行。若报错ModuleNotFoundError,说明缺库,立即运行pip install requests beautifulsoup4 lxml安装依赖。
统一LLM网关 - 一个API对接70+AI模型,使用单一API密钥即可调用GPT、Claude、Gemini、Qwen、Deepseek、Grok等主流模型。
方法二:人工核对三处高危段落
- 第一步:检查requests.get()是否带headers参数,且'User-Agent'值非默认;
- 第二步:检查select()或find_all()的CSS选择器是否与目标网页实际源码一致(右键→查看页面源代码,搜索对应class或id);
- 第三步:检查文件写入部分是否用了encoding='utf-8',避免中文乱码。
若选择器写成div.title但网页实际是article.post-title,程序会返回空列表却无报错——这是最隐蔽的失败。
绕过简单反爬机制
当首次运行返回空结果或状态码503时,大概率触发了基础反爬。此时不要重写整个脚本,只需在原代码中插入两行:
在import后添加:import time
在每次requests.get()之后添加:time.sleep(1)
这能规避大多数基于请求频率的拦截。如果目标站校验Cookie或Session,就需改用session = requests.Session()→session.get()链式调用,并在首次请求后手动提取Set-Cookie值填入后续headers——但这种情况已超出ChatGPT单次提示的可靠生成范围,需人工介入。

















