Requests库的get()方法

第一周学习目标

  • 掌握定向网络数据爬取和网页解析的基本能力(这里面传达了一个理念 The website is the API 也就是说未来所有的信息是通过website来提供的,website本身就是对爬虫来讲自动获取的API)
  • 先介绍Requests库(自动爬取HTML页面,自动网络请求提交),Requests是一个python公认的、第三方、优秀的网络爬虫库
  • Robots协议(Robots.txt),网络爬虫排除标准
  • 五个Projects(实战项目),学会运用Requests库

本周内容分为三个单元

  • Requests库入门
  • 网络爬虫的盗亦有道,重点讲Robots协议
  • Requests库爬取实例

 

我在安装requests库时遇到的问题

1、在python官网下载好python

2、在cmd窗口输入python正常(我没有安装pip 好像在安装python的时候自动安装了pip)

3、在cmd窗口输入 pip install requests,然后系统提示了很多东西,大致意思是说pip版本不够新,因此要先给pip升级

4、在cmd窗口输入python -m pip install --upgrade pip命令更新pip

5、在cmd窗口输入 pip install requests

6、requests安装成功

 

安装好requests后,检查一下是否安装好了,打开IDLE

Requests库的get()方法_第1张图片1

百度的主页已经被成功抓取。(注:文本编码格式是 utf-8)

Resquests库的7个主要方法(除了第一个request()方法是基础方法,其余六个方法都是通过调用request()方法来实现的

Requests库的get()方法_第2张图片

1、requests库的get()方法

获得一个网页最简单的一行代码就是 r=requests.get(url)  这里面,我们通过给定get方法和url来构造一个向服务器请求资源的Request对象。这个对象是requests库内部生成的。

注意:由于python是大小写敏感的,Request对象的R是大写的

requests.get()函数返回的内容用变量r来表示,这个r是一个包含服务器资源的Response对象

requests.get()函数完整的使用方法有三个参数,包括url,params和更多的相关参数

      requests.get(url,params=None,**kwargs)

     url:拟获取页面的url链接

     params:url中的额外参数,字典或字节流格式,可选

     **kwargs:12个控制访问的参数(也是可选的)

Requests库的get()方法_第3张图片Requests库的get()方法_第4张图片

  • 状态码是200说明访问成功,状态码不是200访问失败
  • 用type(r)检测r的类型, 他是一个类,这个类的名称叫Response(Response对象包含服务器返回的所有信息,同时也包含了相互去请求的request信息)
  • r.headers返回get请求获得页面的头部信息

Requests库的get()方法_第5张图片

这五个属性是访问网页最常用和最必要的属性,要牢记

1、200表示连接成功返回成功,404表示失败,只要不是200都是失败

2、网络页面的字符串形式

 

在使用get()方法获取网上资源的时候,有一个基本流程

①首先用r.status_code来检查返回的Response对象它的状态

②如果返回的状态码是200,那我们就可以用r.text , r.encoding , r.appaient_encoding , r.context 等去解析返回的内容

③如果返回的状态码是404或其他,那就说明我们这次url的访问因为某种原因出错将产生异常

Requests库的get()方法_第6张图片.

Requests库的get()方法_第7张图片

网络上的资源,他有他的编码,如果没有编码,我们将看不懂,我们将没办法用有效的解析方式使得人类可读这样的内容,所以我们需要“编码”这个概念                                  charset是一个字段    apparent_encding更为准确(实实在在的分析内容)

你可能感兴趣的:(py)