import requests
from utils.LogUtil import my_log
from faker import Faker
log = my_log()
faker = Faker( 'zh_CN' )
class marketCreate():
def loginToken( self ,mobile,code):
'''
登陆、注册接口
:param mobile: 手机号
:param code: 验证码
:return:
'''
url = 'http://api.xxxxxx.net/v1/user/loginOrRegister' #登陆接口请求地址
headers = { 'Content-Type' : 'application/json' } #请求头信息,json数据类型
json = { "code" :code, "deviceId" : "5de548ad0e268bc0" , "deviceName" : "HWNXT" , "mobile" :mobile, "mobilePrefix" : "63" , "version" : "39" } #请求数据
r = requests.post(url,headers = headers,json = json) #发送请求
token = r.json()[ 'data' ][ 'userVO' ][ 'token' ] #获取token
log.info( '手机号' + mobile + '的token值为:' + token) #打印日志
return token #将token返回出去
def uploadimages( self ,mobile,file_path,filename):
'''
上传图片接口
:param mobile: 手机号
:param file_path: 文件路径
:param filename: 文件名称
:return:
'''
token = self .loginToken(mobile = mobile, code = '789789' ) #请求登陆接口,获取token
url = 'http://api.xxxxxx.net/v1/upload/images' #上传文件接口请求地址
headers = { 'token' : token} #请求头信息关联token。不需要赋值Content-Type,requests库会帮忙添加这个元素,加了可能会报错。
file_data = { 'file' :(filename, open (file_path, 'rb' ), 'image/jpeg' )} #重点:上传文件请求数据。
r = requests.post(url = url,headers = headers,files = file_data) #发送请求
print (r.json()) #打印响应结果
if __name__ = = '__main__' :
m = marketCreate()
# 测试,输入手机号、文件地址、文件名称信息;
m.uploadimages(mobile = '639266558329' ,file_path = 'D:\pyCharm_work\cmkjProject\data\market.jpg' ,filename = '123456.jpg' )
|