Python爬虫入门_requests库使用

4次阅读

requests 爬虫三步:发请求(get()+params/headers)、取数据(text/content+ 编码 / 超时处理)、解析(beautifulsoup+css 选择器)。

Python 爬虫入门_requests 库使用

requests 爬虫,核心就三步:发请求、取数据、解析内容。它比 urllib 简洁得多,是入门首选。

怎么发一个基本请求

安装后导入,调用 requests.get() 就能获取网页源码:

  • requests.get(“https://example.com”) 返回一个 Response 对象
  • .text 获取字符串形式的 HTML(适合含中文的页面)
  • .content 获取字节流(适合处理图片、PDF 或需要手动解码时)
  • 记得检查 .status_code 是否为 200,避免请求失败却没察觉

带参数和 headers 的请求

很多网站会拦截默认 User-Agent,直接被拒。加上 headers 才像真实浏览器:

  • 参数用 params 字典传入,比如 params={“page”: 1, “size”: 10} 会自动拼成 ?page=1&size=10
  • headers 至少设 {“User-Agent”: “Mozilla/5.0 (Windows NT 10.0; Win64; x64)…”}
  • 登录类站点可能还需 cookies 或 session 保持状态,用 requests.Session() 更方便

处理常见响应问题

不是所有响应都顺利。实际写爬虫时,这些细节常决定成败:

立即学习Python 免费学习笔记(深入)”;

  • 中文乱码?先看 response.encoding,不对就手动设成 response.encoding = “utf-8”response.apparent_encoding
  • 超时卡住?加 timeout=10 参数,避免程序一直等
  • 遇到重定向(如跳转登录页)?默认会自动跟随,不想跟就加 allow_redirects=False
  • HTTPS 报证书错误?临时加 verify=False(仅测试用,上线务必删掉)

配合 BeautifulSoup 解析 HTML

requests 负责拿数据,解析交给 BeautifulSoup 更直观:

  • 安装:pip install beautifulsoup4
  • 解析示例:soup = BeautifulSoup(response.text, “html.parser”)
  • 常用操作:soup.find(“title”)soup.select(“.item a”)(CSS 选择器)
  • 别忘了用 .get_text() 提纯文字,去掉标签干扰
text=ZqhQzanResources