重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
这篇文章将为大家详细讲解有关python中requests模块怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
十余年的峡江网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。全网营销推广的优势是能够根据用户设备显示端的尺寸不同,自动调整峡江建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。创新互联建站从事“峡江网站设计”,“峡江网站推广”以来,每个客户项目都认真落实执行。
Requests模块是一个用于网络请求的模块,主要用来模拟浏览器发请求。其实类似的模块有很多,比如urllib,urllib2,httplib,httplib2,他们基本都提供相似的功能。但是这些模块都复杂而且差不多过时了,requests模块简单强大高效,使得其在众多网络请求模块中脱引而出。
环境安装:pip install requests
使用流程:
指定url
基于requests模块发送请求
获取响应对象中的数据值
持久化存储(不是必须的)
案例:爬取百度首页的数据
#1. 导包 import requests #2. 指定url url = "https://www.baidu.com" #3. 使用GET方法发送请求,该方法会返回一个响应对象 response = requests.get(url=url) #4. 获取响应数据 print(response.status_code) # 打印状态码 print(response.url) # 打印请求url print(response.headers) # 打印响应头头信息 print(response.text) #以文本形式打印网页源码 #保存数据 response.encoding = 'utf-8' #指定编码格式,不然打开乱码 text = response.text with open('./2.html','w',encoding='utf-8') as f: f.write(text)
解决requests请求的数据中文乱码问题——》requests请求返回内容 中文乱码问题
上面的案例requests发送了一个GET请求方法,除此之外还有其他的请求方法。最常用的就是GET和POST方法。
res = requests.get ()
res = requests.post ()
res = requests.put ()
res = requests.delete ()
res = requests.head ()
res = requests.options ()
且在指定方法发送请求的时候,有时候还需要在请求方法括号中requests.get(url=url, xx = xx)指定一些参数,如下。先了解一下
方法 | 参数名字 |
HTTP头部 | headers |
GET参数 | params |
POST参数 | data |
文件 | files |
Cookies | cookies |
重定向处理 | allow_ redirects = False/True |
超时 | timeout |
证书验证 | verify = False/True |
工作流(延迟下载) | stream=False/ True |
事件挂钩 | hooks=dict(response=) |
身份验证 | auth= |
代理 | proxies= |
在上面爬取百度首页时,response = requests.get(url=url)其返回的是一个响应对象,而如果我们想要获取具体的数据比如响应码或者网页源码时,就需要通过指定响应对象的属性进行获取。如response.status_code获取响应码
获取请求url res. url
状态码 res. status_code
响应数据(以字符串形式) res . text
返回的是一个原生字符串,是bytes类型 res. content
查看服务器响应头 res. headers
查看cookie res.cookies
关于“python中requests模块怎么用”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。