python使用requests.post方法传递form-data类型的Excel数据
【代码】python使用requests.post方法传递form-data类型的Excel数据。
·
import datetime
import json
import random
import string
import requests
from requests_toolbelt import MultipartEncoder
# 在企业微信群里发消息
def log(day):
url = 'https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=xxx'
headers = {
"Content-Type":"application/json"
}
data = {
"msgtype":"text",
"text":{
"content":"xxx"
}
}
response = requests.post(url=url,headers=headers,data=json.dumps(data))
print(response.status_code)
print(response.text)
# 测试环境
# url = "https://xxx"
# 生产环境
url = "https://xxx"
# 定义字符集
chars = string.ascii_lowercase+string.digits+string.ascii_uppercase
# 生成长度为32的随机字符串
random_str = ''.join(random.sample(chars, 32))
print(random_str)
# 设置日期
day = ((datetime.datetime.now()-datetime.timedelta(days=1)).strftime("%Y-%m-%d"))
# 配置数据
data = MultipartEncoder({
'requestId':random_str,
'docType':'invoice',
# 'application/octet-stream'这个可以通过apifox等软件post一次后看请求内容获取
'file': ('xxx.csv', open('xxx.csv', 'rb'), 'application/octet-stream'),
# 'file': ('xxx.csv'), open(xxx.csv', 'rb'), 'application/octet-stream'),
})
# 配置请求头
headers = {
# 'Authorization': 'Bearer xxx', # 测试环境
'Authorization': 'Bearer xxx', # 生产环境
'User-Agent': 'Apifox/1.0.0 (https://apifox.com)',
'Accept': '*/*',
# 'Host': 'xxx', # 测试环境
'Host': 'xxx', # 生产环境
'Connection': 'keep-alive',
'Content-Type': data.content_type
}
print(data.content_type)
# 返回结果
response = requests.post(url, headers=headers, data=data)
print(response.text)
if json.loads(response.text)['code'] == "200":
print("ok")
log(day)
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐


所有评论(0)