https://www.cnblogs.com/changyou615/p/8776507.html
接口是上傳圖片,通過F12抓包獲得如下信息
由于使用的是RequestsLibrary,所以先看一下官網怎么傳遞二進制文件參數,https://2.python-requests.org//en/master/user/advanced/#post-multiple-multipart-encoded-files
其中說到:只需將文件設置為以下元組的列表
To do that, just set files to a list of tuples of?(form_field_name,?file_info)
:
>>> url = 'https://httpbin.org/post' >>> multiple_files = [('images', ('foo.png', open('foo.png', 'rb'), 'image/png')),('images', ('bar.png', open('bar.png', 'rb'), 'image/png'))] >>> r = requests.post(url, files=multiple_files) >>> r.text
但是由于還有入參,所以不能將multiple_files構造為list,而是需要構造為字典,這一點在Post Request關鍵字說明中可以得到驗證,如下:
?
所以先構造元組,再將元組作為&{multipleFile}字典中的值,鍵的名字為第一張圖中抓取到的入參的名稱;
由于訪問該接口需要鑒權,所以先將設置了cookies,再在創建session時使用,創建會話時一定不要自己寫Content-Type;
最后一步將組裝好的&{multipleFile}字典傳給files參數
?