有时候需要接入媒体平台如腾讯/头条等广告数据等,掌握API调用的常规方法可以提高我们接口调研的效率,快速验证找到我们需要接入哪个接口的数据,我们需要学习的主要是requests.get
方法,用于发送 GET 请求获取数据。
requests.get(url, params=None, **kwargs)
参数:
url
(str):请求的 URL。params
(dict, 可选):URL 的查询参数,作为字典传递。**kwargs:
其他可选的参数,例如 headers、cookies 等。
返回值:
- 返回一个 Response 对象,包含服务器的响应信息。
import requests
import time
import random
import json
def getApiDatas():
url="https开头的完整地址"
# 请求头
headers = {
"access_token": "a0fed9e74e4f35a58c23h6ba8669a898a8f1c82e"
}
# 可能有一些全局参数,其实都一样,分开写单纯是为了不用改,可以合并
common_parameters = {
# "access_token": "a0fed9e74e4f35a58c23h6ba8669a898a8f1c82e",
'timestamp': int(time.time()),
'nonce': str(time.time()) + str(random.randint(0, 999999))
}
params = {
"account_id": "123456789",
"date_range": {
"start_date": "2024-03-01",
"end_date": "2024-03-10"
},
# 页码一般为可选参数,不填无所谓
# "page": 1,
# "page_size": 10
}
params.update(common_parameters)
# url必填(str),params一般都会填(dict),headers有时不填(dict)
response = requests.get(url=url, params=params, headers=headers)
datas = response.json() # 这个方法用来将返回的json数据解析为字典,一般我们遇到的接口返回的都是json格式
# 这段代码用来检查传入的参数是否为字符串,根据API文档看是否需要使用
for k in params:
if type(params[k]) is not str:
params[k] = json.dumps(params[k])
return datas
r = getApiDatas()