Python(爬虫篇)---Requests模块

一、Requests简介

1. requests库简介

Urllib 和 Requests 模块是发起 http 请求最常见的模块。

虽然 Python 的标准库中 urllib 模块已经包含了平常我们使用的大多数功能,但是它的 API 使用起来让人感觉不太好,而 Requests 自称“http for Humans”,说明使用更简洁方便。

Requests继承了urllib的所有特性。Requests支持http连接保持和连接池,支持使用cookie 保持会话,支持文件上传,支持自动确定响应内容的编码,支持国际化的 URL 和 POST 数 据自动编码。

**requests 的底层实现其实就是 urllib3(urllib2 的升级版—python2 支持) **
Requests 的文档非常完备,中文文档也相当不错。Requests 能完全满足当前网络的需求, 支持 Python 2.6—3.6。

开源地址:http://github.com/kennethreitz/requests
中文文档 API:http://2.python-requests.org/zh_CN/latest/

2. 安装方式

利用 pip 安装或者利用 easy_install 都可以完成安装:
$ pip install requests

二、GET请求

  1. 导入requests
  2. 发送请求,返回响应
    • 确定请求的URL
    • 确定请求方式get
  3. 保存文件(html)

1. 全页面保存

例:将百度产品大全页面保存到本地

import requests
response = requests.get(url='https://www.baidu.com/more/')
with open('百度产品大全.html','w',encoding='utf-8') as fp:
     fp.write(response.text)

发现问题:

  1. 中文乱码
  2. 图片不显示

解决:

  1. 中文乱码:最根本原因是编码问题
    content:获取页面二进制类型内容,使用content.decode(‘编码格式’),默认是utf-8大部分网页都是使用utf-8或者是gbk,解码时,尝试使用utf-8,如果乱码没有解决,换成gbk基本可以。如果还没有解决,使用response.encoding来解决
import requests
response = requests.get
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值