如何使用POST表单数据Pythonrequests上传图像

2024-06-26 01:33:15 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用Tinder的私有API, 我需要在Python中复制下面的请求。 任何帮助都将不胜感激

POST Request to Tinder's private API - Picture

这是我的当前代码,我不知道在数据字段中放什么:

url = "https://api.gotinder.com/v2/onboarding/photo?requested=tinder_rules&requested=name&requested=birth_date&requested=gender&requested=custom_gender&requested=show_gender_on_profile&requested=photos&requested=email&requested=allow_email_marketing&requested=consents&requested=schools&requested=interested_in_gender&requested=show_same_orientation_first&requested=show_orientation_on_profile&requested=sexual_orientations"

header = {
"token": onboarding_token,
"os-version": "29",
"encoded-device-model": "WU06NZt",
"mobile-country-code": "255",
"encoded-device-carrier": "u2ascI",
"appsflyer-id": "1583173259413-9570632540896010457",
"app-session-id": "dff122a6-b476-6497-e918-30780a3fe0f2",
"mobile-network-code": "01",
"persistent-device-id": "b2be392ff451af50",
"accept-language": "en",
"x-supported-image-formats": "webp",
"os-version": "29",
"user-agent": "Tinder Android Version 11.6.0",
"install-id": "aAOLMKioAx2",
"platform": "android",
"tinder-version": "11.6.0",
"app-session-time-elapsed": "31851",
"app-version": "3665",
"Content-Type": "multipart/form-data; boundary=cloyjwdgfespkeflygwqmaaapnqambnjhdpbajej",
"Accept-Encoding": "gzip",
"Accept": "*/*"
    }

payload = {"fields":[{"data":1,"name":"gender"}]}

r = requests.post(url, data={ }, headers=header, verify=True)
print(r.response)

Tags: nameapiidappurldataonversion
1条回答
网友
1楼 · 发布于 2024-06-26 01:33:15

您不需要verify=True,您需要在files参数中发送图片,在data参数中发送其他两个字段,如下所示

url = "https://api.gotinder.com/v2/onboarding/photo?requested=name&requested=birth_date&requested=gender&requested=custom_gender&requested=show_gender_on_profile&requested=photos&requested=schools&requested=consents&requested=videos_processing&requested=sexual_orientations&requested=show_same_orientation_first&requested=show_orientation_on_profile&requested=interested_in_gender&requested=tinder_rules"

payload = {'num_media_pending': '0',
'type': 'photo'}
files = [
  ('photo', open(file_name,'rb'))
]
headers = {
  'user-agent': 'Tinder/11.12.0 (iPhone; iOS 13.3.1; Scale/2.00)',
  'persistent-device-id': 'ADEF242C6C43497981B7482AFA4AE57',
  'app-session-time-elapsed': '1453.912697076797485',
  'x-supported-image-formats': 'webp, jpeg',
  'platform': 'ios',
  'token': onboarding_token,
  'accept-language': 'en-us',
  'tinder-version': '11.12.0',
  'accept': '*/*',
  'app-version': '3463',
  'app-session-id': '12CE45F5-75CE-4E96-B402-CCAD8007DE43',
  'os-version': '130000300001',
  'accept-encoding': 'gzip, deflate, br',
  'content-type': 'multipart/form-data; boundary=Boundary-13A00F53-F569-4FDB-B9B0-B160ECC11322',
  'user-session-time-elapsed': '408.918367587797123'
}

res = requests.post(url, headers=headers, data = payload, files = files)

相关问题 更多 >