Python教程

Python爬虫(ROBOTS协议和Request使用入门)

本文主要是介绍Python爬虫(ROBOTS协议和Request使用入门),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

ROBOTS协议
Robots协议:网站通过Robots协议告诉搜索引擎哪些页面可以抓取,哪些页面不能抓取。
举例:https://www.baidu.com/robots.txt
在这里插入图片描述

Request使用入门

Urlib
Urlib是Python内置的HTTP请求库。
Request
Request表示来自客户端的一次请求,它有请求行,请求头,和请求实体。

为什么学习request,而不是urlib?
·Request的底层实现就是urlib
·Request在python2和pyhton3中通用,方法完全一样,但对urlib来说却不一样
·Request简单易用
·Request能够自动帮助我们解压(gzip压缩的等)网页内容

Request的作用

发送网络请求,返回响应数据
中文文档API:https://docs.python-requests.org/zh_CN/latest/index.html

Request的使用

·一开始要导入Request模块:import  requests(编译器需要提前安装request)
在这里插入图片描述

·然后尝试获取某个网页(百度为例)
在这里插入图片描述
·现在我们获得一个名为r的Response对象。(可以尝试输出它)
在这里插入图片描述
在这里插入图片描述

Requests中获取网页信息时解决编解码的方法

在我们获取网页信息时,可能因编解码方式的不同从而导致信息乱码
在这里插入图片描述
·response.content(结果为二进制类型,可用字符转换来转换类型即:response.content.decode())
·response.content.decode(“gbk”)
·response.encode=“编码方式” + response.text
在这里插入图片描述
在这里插入图片描述

response.text和response.content的区别

response.text和response.content都可用来获取响应的网页页面的信息

·response.text:
 类型:str
 解码类型:根据HTTP头部响应的编码做出有根据的推测,推测文本编码
 如何修改编码方式:response.encoding=“解码类型”(例:response.encoding=“utf-8”)

·response.content
 类型:bytes
 解码类型:没有设定
 如何修改编码方式:response.content.decode(“解码类型”)(例:response,content.decode(“utf-8”))

Request简单运用(爬取一张已知地址的图片)

在这里插入图片描述
在这里插入图片描述

这篇关于Python爬虫(ROBOTS协议和Request使用入门)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!