requests的使用方法

这篇博客详细介绍了如何使用requests库进行网络请求,包括GET和POST请求、设置请求头、添加User-Agent和cookie、JSON数据解析、图片爬取以及通过选择器提取数据。以豆瓣Top250爬取为例,展示了实战应用。
摘要由CSDN通过智能技术生成

requests的使用方法

直接获取

import requests

python基于HTTP协议进行网络请求的第三方库

发送请求
1、requests.get(url, *, headers, params, proxies) — 发送get请求

​ 2、requests.post(url, *, headers, params, proxies) — 发送post请求

参数:

​ url — 请求地址(一个网站的网址、接口的地址、图片地址等)

​ headers — 设置请求头(设置cookie和UserAgent)

​ params — 设置参数

​ proxies — 设置代理

发送get请求参数直接拼接到URL中

response = requests.get('http://api.tianapi.com/auto/index?key=c9d408fefd8ed4081a9079d0d6165d43&num=10')

发送post请求,参数设置在params

params = {
   
    'key':'c9d408fefd8ed4081a9079d0d6165d43',
    'num':10
}

response = requests.post('http://api.tianapi.com/auto/index',params = params)
response = requests.get('http://www.yingjiesheng.com/')

设置编码方式(乱码的时候才需要设置在控制台head标签中查看编码方式)

response.encoding = 'GBK'

获取响应头信息

print(response.headers)

获取响应体

# a.获取text值(用于请求网页,直接拿到网页源代码)
print(response.text)

# b.获取json解析结果(用于返回json数据的数据接口)
print(response.json())

# c.获取content值(获取二进制类型的原数据,用于图片、视频、音频的下载)
print(response.content)

添加请求头

添加User-Agent
headers = {
   
    # 伪装为浏览器访问
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4542.2 Safari/537.36'
}

获取网页数据

response = requests.get('https://www.51job.com/',headers = headers)
添加cookie

需要登录才能进入的网页添加

headers = {
   
    # 伪装为浏览器访问
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4542.2 Safari/537.36',
    # 跳过登录
    'cookie':'_zap=1667ed8e-6095-4318-89ec-330c6ef0b8ee; d_c0="AMCve_TnZRCPTh3LhiwHGSuGFq7l4XAr6UE=|1574496707"; _ga=GA1.2.1669928704.1583753947; _9755xjdesxxd_=32; YD00517437729195%3AWM_TID=4dmOpmKKlNhAEUAEBUYqyFtCZ219gaGq; __snaker__id=iRbYMmY5zvFTkQUm; _xsrf=W3e22M3aL6nZ9ZTPAfuxTjelvXUcstnM; YD00517437729195%3AWM_NI=OdDI%2FzdmzhFqywo4cAVWWYPWnNiJrU6p%2FZ6OQ%2BjdzwAOU6Hhd3ew%2Fym8NqBmEq2q%2BwGmAfs605pBNi%2FWHBKGmL9J9OsMdf%2FEaRsTp9tJRBthnh%2Fi3b5l6HTOzQca8GmWSng%3D; YD00517437729195%3AWM_NIKE=9ca17ae2e6ffcda170e2e6eea6d880e98ba7afcd68f79a8bb3c44b979f9a85f573aceebe97ca6598b9ba91fb2af0fea7c3b92a8dbc8caaae72a8b3b689c57bbba9a1d5e24b968999bad35dae92a7abf15ff6b0e1bbb54593f5a685f97d83919bd7cb64a8edab98ae73afe88292c16787affe92aa7d85b38f87f23ef4ebc0a3cd63ed8988a3ca4daf94f7abbc45b193ac87ae4fa38ebdb5f333b8969ea3f764aeb8e18ab26af7b4faa9d745ba8fad82bb4daf899d8fe637e2a3; Hm_lvt_98beee57fd2ef70ccdd5ca52b9740c49=1628255651,1628596803,1628599663,1628664693; SESSIONID=TTagVSrOcand6lnQK3Tx9P3QfIUJQzCSuwiM8mBdAez; JOID=UFgVB07VQ9GbCjEQQ9PWTZvaJpBQgxe0_VtgYgixIL_7PVp8EqM0x_wPMxRG_xEMMhp1TrjTjeBgzXIl0sn6nZM=; osd=U1sVBEjWQNGYDDITQ9DQTpjaJZZTgBe3-1hjYgu3I7z7Plx_EaM3wf8MMxdA_BIMMRx2TbjQi-NjzXEj0cr6npU=; gdxidpyhxdE=Os7BNOHW1sAPAdCRxVjImRb%5CwvHiXuqyeKWE%2BDdcs5%2Fx4LeRYQ56kPLuEZUvnGyGU0vPHAv35sZ3GWqnI2bOR8Udxg5iLXq6fNMuqkowIZ2Z2%5CZOCRh3PvZu3NluLjDKO9H0HSCg0iYDEXUrbPrKDZ4iZsPvjwbC5pHrj4Niel4djY9B%3A1628665594139; r_cap_id="2|1:0|10:1628664703|8:r_cap_id|44:YWI1NDJjZWMyN2NkNDI3MGI2YWQ3MWFkOTNlYzUwN2Q=|0ac1b35368b1b87333d0d8910f9b90e172f777bd7aba8b213955aeb522ebbf3a"; l_n_c=1; cap_id="ZDM0MjhjMmEyN2Y3NDM4ZGIxMzM2YTY4NThmMThjOTE=|1628664713|5484319ad8db598aff3bdfce4d09effda9863624"; l_cap_id="ZjAwNTAzNjA3YzlmNDUzNWIyN2Y1OWE3M2VmZjFhOWI=|1628664713|eb132e13718f49ec0e33cb23468ea33d39b1027e"; n_c=1; atoken=D6D67B4069B60CE4499DFCBCDA83299B; atoken_expired_in=7776000; client_id="OUQxOTkwRTI4MTQUM3RDQzRTM1M0U=|1628664722|80c987621bc12b757cf3578041cfe972142d55ee"; capsion_ticket="2|1:0|10:1628664723|14:capsion_ticket|44:NWJjNDFjMmIwMzBiNGYyMTg4NTA1MWYxNWFkNjFmYmU=|4393e57fcf2fc0719cfac5005f054d90f3a79973be8d3633fa2dffc23e7231a1"; captcha_session_v2="2|1:0|10:1628664888|18:captcha_session_v2|88:QWUweXlmcXNHeGVBcTJMRXlDcVZmSWdEQW1rdEhrNTdlUXhGYThobm8xalZ3SUNwUmxiM2FoM2diTTBIWnJjSw==|d3176dd52a4897549525550efa2ff752507bb7b98c8db2563812f2b91f51ca6d"; captcha_ticket_v2="2|1:0|10:1628665001|17:captcha_ticket_v2|704:eyJ2YWxpZGF0ZSI6IkNOMzFfSkpWQ243QVFzVlJ0QnFoaElrMUdJSFouY1M0VTFndVZIS0RpT
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python3 requests 是一个 HTTP 库,可以让你以简单的方式发送 HTTP/1.1 请求。它支持 HTTP/1.1 和 HTTPS,并且对 HTTP/2 也有一些支持。使用 requests 库可以方便地获取网页内容、发送 POST 和 GET 请求、上传文件、处理 cookies 等。 下面是使用 Python3 requests 库的基本步骤: 1. 安装 requests 库: 在命令行中输入以下命令: ``` pip3 install requests ``` 2. 导入 requests 库: 在 Python3 代码中导入 requests 库: ``` import requests ``` 3. 发送 GET 请求: 使用 requests 库发送 GET 请求的基本语法为: ``` response = requests.get(url) ``` 其中,url 是请求的网址,response 是服务器响应的对象。 例如: ``` import requests response = requests.get('http://www.baidu.com') print(response.text) ``` 上面的代码会发送一个 GET 请求到百度的网址,然后将服务器响应的内容打印出来。 4. 发送 POST 请求: 使用 requests 库发送 POST 请求的基本语法为: ``` response = requests.post(url, data=data) ``` 其中,url 是请求的网址,data 是请求的数据,可以是字典、元组列表、JSON 等。 例如: ``` import requests data = {'username': 'test', 'password': '123456'} response = requests.post('http://www.example.com/login', data=data) print(response.text) ``` 上面的代码会发送一个 POST 请求到 http://www.example.com/login 的网址,然后将服务器响应的内容打印出来。 5. 上传文件: 使用 requests 库上传文件的基本语法为: ``` response = requests.post(url, files=files) ``` 其中,url 是请求的网址,files 是要上传的文件。 例如: ``` import requests url = 'http://www.example.com/upload' files = {'file': open('example.png', 'rb')} response = requests.post(url, files=files) print(response.text) ``` 上面的代码会上传 example.png 文件到 http://www.example.com/upload 的网址,然后将服务器响应的内容打印出来。 6. 管理 cookies: 使用 requests 库管理 cookies 的基本方法为: ``` import requests # 发送请求时带上 cookies cookies = {'name': 'value'} response = requests.get('http://www.example.com', cookies=cookies) # 获取响应的 cookies cookies = response.cookies ``` 上面的代码会在发送请求时带上 cookies,并在响应中获取 cookies。 以上就是使用 Python3 requests 库的基本步骤。除了上面介绍的功能,requests 库还支持代理、SSL 验证、连接池等高级功能,可以根据具体需求进行调用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值