Python的requests模块使用

Requests

 

基本介绍


requests 模块可以模仿浏览器的行为。通常用于爬虫。
安装使用 pip3 install requests
 

一、get 方法


 

JSON 介绍


JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。 易于人阅读和编写。同时也易于机器解析和生成。
我们通常使用到的 JSON 数据的表现形式如下:
'{"name": "shark", "age": 18}'
'[1, 2, 3, "lenovo"]'

'[{"name": "shark"}, {"name": "xiguatian"}]'
可以看出 JSON 数据中的字符串必须使用双引号,最外层使用单引号
JSON 包含有
• 对象 ,就是一对儿大括号
• 数组, 就是一对儿中括号
• 字符串,必须使用双引号引起来
• 数字
 

1. 基本使用


import requests
r
= requests.get('https://api.github.com/events')

r 是返回的 Response对象。我们可以从这个对象中获取所有我们想要的信息。
r.status_code # 响应状态码

r.content # 二进制的响应体

r.text # 普通文本形式的相应体

# 假如相应体是一个 JSON 的数据类型,可以使用如下方法直接转换为 Python 的数据类型
r.json


 

2. get方法的传参


In [25]: payload = {'key1': 'value1', 'key2': ['value2', 'value3']}

In [26]: r = requests.get("http://httpbin.org/get", params=payload)

In [27]: r.url
Out
[27]: 'http://httpbin.org/get?key1=value1&key2=value2&key2=value3'

 

二、post 方法


要实现这个,只需简单地传递一个字典给 data 参数。
>>> payload = {'key1': 'value1', 'key2': 'value2'}

>>> r = requests.post("http://httpbin.org/post", data=payload)
>>> print(r.text)
{
...
"form": {
"key2": "value2",
"key1": "value1"
},
...
}
 

传递 JSON 数据


>>> import json

>>> url = 'https://api.github.com/some/endpoint'
>>> payload = {'some': 'data'}

>>> r = requests.post(url, data=json.dumps(payload))
还可以使用 json 参数直接传递,然后它就会被自动编码。这是 2.4.2 版的新加功能:
>>> url = 'https://api.github.com/some/endpoint'
>>> payload = {'some': 'data'}

>>> r = requests.post(url, json=payload)
 

三、Custom Headers (自定义请求头)


如果你想为请求添加 HTTP 头部,只要简单地传递一个 dict 给 headers 参数就可以了。
>>> headers = {'user-agent': 'my-app/0.0.1'}

>>> r = requests.get(url, headers=headers)
 

四、Cookie


如果某个响应中包含一些 cookie,你可以快速访问它们:
>>> url = 'http://example.com/some/cookie/setting/url'
>>> r = requests.get(url)

>>> r.cookies['example_cookie_name']
'example_cookie_value'
要想发送你的cookies到服务器,可以使用 cookies 参数:
>>> url = 'http://httpbin.org/cookies'
>>> cookies = dict(cookies_are='working')

>>> r = requests.get(url, cookies=cookies)
>>> r.text
'{"cookies": {"cookies_are": "working"}}'
参考资料: https://2.python-requests.org//zh_CN/latest/user/quickstart.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值