python (3) 爬虫必备——requests库

爬虫必备——requests库

爬虫过程,其实我感觉就是快速多次地用程序模拟我们浏览网页的过程,而requests库就是一种较为简单的Python HTTP库。
因为爬虫过程要与http协议打交道,所以requests库的学习必不可少。
我们下面从函数入手,快速了解requests库

目录

爬虫必备——requests库
1 函数
2 requests.get()
3 常用操作
4 小节

函数

requests库函数
get 获取url位置的资源。
head 获取url位置的资源的头部信息。
post 请求向url位置的资源后附加新的数据。
put 请求向url位置存储一个资源,覆盖原来的资源。
patch 请求url位置的局部资源进行更新。
delete 请求删除url位置对应的全部资源。

requests.get()

所有函数中get函数应该是最基本的,通过get操作就能够得到服务器返回的所有相关资源。

import requests
url='https://www.baidu.com/'
r=requests.get(url)
print(r)

注:
1. get()函数返回的是一个Response对象,这个Response对象包含服务器返回的所有资源。
2. 在通过get()方法得到url后,requests库内部会自动生成一个Request对象 ,用于向服务器请求资源。

而完整的get函数除了url之外还包含着更多的参数:

requests.get(url,params=None,**kwargs)
url:页面的url链接。
params:url中的额外参数,字典或字节流格式。
**kwargs:13个访问控制的参数。

我们来说一下在爬虫过程中可能会用到的13个参数中的几个参数:

headers:头部访问信息,表明你的身份
timeout:设定超时时间,秒为单位
proxies:设定访问代理服务器,可用于隐藏原ip地址

在这里,有必要先介绍一下Response对象的一些属性与函数,以便于对于我们所得到的内容的分析。

Response对象属性
r.status_code HTTP返回状态。200表示成功,404表示失败。
r.text HTTP的相应内容的字符串形式。就是url对应的页面内容。
r.encoding 从HTTPheader中猜测的相应内容编码方式
r.apparent_encoding 从内容分析出的相应内容编码方式
r.content HTTP相应内容的二进制形式
Response对象函数
r.raise_for_status HTTP返回状态成功则返回None,返回状态失败则会出现Error。

常用操作

1.输出爬虫内容,要使用text属性

import requests
url='https://www.baidu.com/'
r=requests.get(url,headers=headers,timeout=5,proxies=proxies)
print(r.text)

输出结果

<!DOCTYPE html>
<!--STATUS OK--><html> <head><meta http-equiv=content-type content=text/html;charset=utf-8><meta http-equiv=X-UA-Compatible content=IE=Edge><meta content=always name=referrer><link rel=stylesheet type=text/css href=https://ss1.bdstatic.com/5eN1bjq8AAUYm2zgoY3K/r/www/cache/bdorz/baidu.min.css><title>百度一下,你就知道</title></head> <body link=#0000cc> 

你可能感兴趣的:(python小航入门,python)