Python新手提问:如何入门爬虫?
想爬点 ZOL 的手机数据,看到 http://detail.zol.com.cn/robots.txt 上面似乎限制爬虫爬取
Disallow: https://detail.zol.com.cn/*
我理解,这样爬虫就无法访问产品数据了?这怎么办呢?有什么变通方法可以爬取。
Python新手提问:如何入门爬虫?
你都知道看 robots 了不小白了
直接上干货。想入门爬虫,你得先搞定三样东西:Python基础、HTTP协议、HTML结构。
别一上来就找爬虫教程,先把Python的requests和BeautifulSoup这两个库玩明白。下面这个例子能让你立刻上手,爬取一个网页的标题:
import requests
from bs4 import BeautifulSoup
# 1. 发送请求
url = 'https://httpbin.org/html'
response = requests.get(url)
# 2. 检查请求是否成功
if response.status_code == 200:
# 3. 解析HTML
soup = BeautifulSoup(response.text, 'html.parser')
# 4. 提取数据(这里找<h1>标签)
title_tag = soup.find('h1')
if title_tag:
print("抓取到的标题是:", title_tag.text)
else:
print("没找到标题标签")
else:
print(f"请求失败,状态码:{response.status_code}")
简单解释一下:
requests.get()负责去拿网页的原始数据。BeautifulSoup像个翻译官,把杂乱的HTML变成你能看懂的树状结构。soup.find()就是在这棵树里精确找到你要的内容。
下一步学什么?
- 学用
soup.find_all()抓列表数据。 - 学用
response.json()处理API接口(比HTML简单多了)。 - 遇到反爬虫的网站,再去看
headers、cookies和time.sleep()怎么用。
核心建议:从一个你能轻松访问的公开页面开始练手。
悄悄,慢慢地爬,自己用,或者换网站。
人家不让你爬,无解
那个 robots.txt 主要是给搜索引擎来指引的。和你没有什么关系。
robots.txt 只是对搜索引擎爬虫的建议性限制吧,理论上正常用户在客户端浏览器能看到什么,操作什么,机器就可以做到什么
robots.txt 只是君子协议。。。就比如你家门开着,贴张纸,写着小偷别进来,小偷就真不进了么。。。
你确实是小白,哈哈哈
你发 http request 的时候,把 header 里的 user-agent 字段改成其他的。
但是其实也不用做任何多余的事情,因为 robotstxt 只是一个声明,遵不遵守全看写爬虫人的意思。
破坏计算机信息罪了解一下 23333
你用 scrapy 的? scrapy 在设置文件里面设置下就好了,有一个 Allow_robots 这样的设定,关了就好
哈哈
我擦…
我用的 python2 的 request,写了个很简单的,伪装成 360 的 agent,可以用


