实战演练开始前,稍微来讲解一下 Requests 的基本使用,当作是暖身。
记不记得之前有提过 HTTP 有不同的 Methods,而这些 Methods 分别对应不同的行为。
Methods??忘记了吗?传送门在此!
如果使用 Requests 套件要怎麽使用这些 Methods 来送出 HTTP Request 呢!?其实非常简单。
范例如下:
GET
import requests
url = "https://www.example.com" # 举例用 url
req_query = {"key1": "value1", "key2": ["value2", "value3"]}
r = requests.get(url, params=req_query)
有设定 query 组出来的 URL 会是这样:
https://www.example.com?key1=value1&key2=value2&key2=value3
requests.get 的 params 就是 URL 中的 query。任何 URL 都可以拥有 query,所以 params 这个参数,不限於只能在 requests.get 这个 function 中使用
。
query?之前介绍的已经忘记了吗?没关系,在此附上传送门。
POST
import requests
url = "https://www.example.com" # 举例用 url
req_data = {"key":"value"}
r = requests.post(url, data=req_data)
data 这个参数就是将指定的资料包装进 HTTP Message 的 Body 里面。
这边要注意 data 的预设资料格式是 form
,如果该 URL 只吃 JSON 的话要改成:
# 方法1:自己转(记得要先 import json)
r = requests.post(url, data=json.dumps(req_data))
# 方法2:使用内建参数,直接代入
r = requests.post(url, json=req_data)
更详细的讲解可参考官方文件 - More complicated POST requests。
PUT
使用方法与 POST 雷同。
import requests
url = "https://www.example.com" # 举例用 url
req_data = {"key":"value"}
r = requests.put(url, data=req_data)
PATCH
使用方法与 POST 雷同。
import requests
url = "https://www.example.com" # 举例用 url
req_data = {"key":"value"}
r = requests.patch(url, data=req_data)
DELETE
import requests
url = "https://www.example.com" # 举例用 url
r = requests.delete(url)
另外很少用到的 HEAD、OPTIONS 也有提供 function 操作:
import requests
url = "https://www.example.com" # 举例用 url
r = requests.head(url)
r = requests.options(url)
以上就是 Requests 套件,传送 HTTP Request 的方法,下一篇将介绍如何透过 Requests 存取 HTTP Response。
更多范例可以参考官方文件 - Make a Request
>>: Day 18 终於写了一个测Provider的最初版
今天主要是来介绍一下文字嵌入(Embed)这功能 如果想要在讯息里使用mark down功能的话需要...
-常用IDE - iOS - Xcode - Common - Atom - Sublime Tex...
我们当初是先决定题目才开始想要用什麽技术做的 最开始其实有想了两三个 有关於区块链的 ai的等等一些...
Gridbot: 1.debugmode的检查新增部位超过上限的部分 2.针对凌晨时段交割金和帐户余...
跑范例环节 https://devcenter.heroku.com/articles/contai...