工作中经常会遇到比如上传文件的接口,那么遇到这些接口该如何处理呢?
今天我们来给大家举个例子: 比如我们要上传一张编测编学论坛用户头像的照片: 正常手工流程: 1.鼠标挪动到右上角用户头像,浮窗里点击小齿轮,如下图所示:
2.进入个人设置页面后,选择修改头像
3.在本地选择一张帅气/漂亮的头像,点击确定,就可以完成上传 那么如何使用requests实现这个操作呢? 话不多说直接上代码:
1 url_upload_avatar='http://HdhCmsTestbcbxhome测试数据/bcbxxy/uc_server/index.php?m=user&a=uploadavatar&appid=1&input=6c88%2BV1B5VoMLDzXXSFexg0RaKaats948J3LegrTODCap%2BwyBxcuMxbkjH46LSoepfGWpX%2FCMYJerBT%2FYSioQyJyoWBZ1TDvCCc3oy%2FHqlDcNVasowz092s&agent=43fbb95c9bbbf2dcd00331855caa9051&ucapi=HdhCmsTestbcbxhome测试数据%2Fbcbxxy%2Fuc_server&avatartype= Virtual &uploadSize' 2 headers_upload = {'Cookie':'这里是一大串cookie,cookie用于鉴权,且会失效,所以调试时,请取自己最新登录过的cookie值'} 3 files = {'Filedata':open('bcbxhomelogo.jpg','rb')} 4 result_upload_avatar = requests.post(url_upload_avatar,headers=headers_upload,files=files) 5 print(result_upload_avatar.text)
bcbxhomelogo.jpg其中这个可以换成你自己本地的图片,可以用相对路径也可以用绝对路径,我这个图片和脚本在同一目录下,所以直接写图片名称即可 上传成功后的返回如下:
http://HdhCmsTestbcbxhome测试数据/bcbxxy/uc_server/data/tmp/upload7.jpg
需要注意这里的不同的用户数字会变化,是正常现象,尝试在浏览器中打开这张图片
要真正生效还需要剪裁才行,原理相同,这里就不多赘述了 是不是很简单?快来动手试试吧!
查看更多关于接口自动化之Python3_Requests之上传头像的详细内容...