1.熟悉、梳理、總結項目研發實戰中的
Python開發
日常使用中的問題。隨著版本更新,做了一些變動,如商業化限制,取消一些語法等。
2.歡迎點贊、關注、批評、指正,互三走起來,小手動起來!
文章目錄
- 1.背景介紹
- 2.單次接口請求總結代碼片
- 3.批量循環接口請求總結代碼片
- 4.持久化`csv`文件合并
- 4.參考鏈接
1.背景介紹
API
接口批量請求限制API
接口總量請求限制,一不小心就被封掉了,所以變著法子請求數據,沒數據只能說應用可能有些花架子,沒有豐富的數據內容支撐。- 涉及
csv
文件合并、接口單次請求、接口批量請求等實戰總結。 - 后續還可以引入動態白名單
IP
等機制
2.單次接口請求總結代碼片
-
import requests import random import json import time import json import pandas as pd pd.set_option('display.max_columns', 500)url = "https://XXX.XXX.XXX.XXX/api/call" _pstart_num = 1 _pend_page_size = 1000 xdhnonce = random.randint(100000, 999999) app_time = int(time.time())_headers = {"Content-Type": "application/json","APPLICATION_CODE": "12345678990", "APPLICATION_TIME": "%d" % (app_time) , "INTERFACE_CODE": "12345678990", "X-DD-Nonce": "%d" % (xdhnonce) }_body = {"param": [{"key": "key_name","value": "","matching": "!="}],"pageNum": _pstart_num,"pageSize": _pend_page_size }print( app_time )response = requests.post(url, data=json.dumps( _body ), headers=_headers, verify=False, timeout=30) response_json = json.loads( response.text ) datas = response_json['data']['records'] datas_df = pd.DataFrame( datas ) pis_file_path = r'..\csvs\youli_%d_%d_.csv' %