@danis_2014

Как загрузить фотографию на taobao.com с Python?

На сайте есть форма для загрузки фотографии для поиска. Отправляется запросом на https://s.taobao.com/image с таким телом:5b4979582fc443a4964626d24da7dccb.png

Пытаюсь отправить такой же запрос с помощью питона.
import requests

session = requests.Session()
headers = {
    'user-agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 '
                  'YaBrowser/17.6.1.776 (beta) Yowser/2.5 Safari/537.36',
    'referer': 'https://s.taobao.com/search?initiative_id=staobaoz_20170719&q=',
    'origin': 'https://s.taobao.com',
    'accept-encoding': 'gzip, deflate, br',
    'accept': 'application/json, text/javascript, */*; q=0.01',
    'scheme': 'https',
    'path': '/image',
    'method': 'POST',
    'authority': 's.taobao.com',
    'x-requested-with': 'XMLHttpRequest',
    'accept-language': 'ru,en;q=0.8',
    'content-type': 'multipart/form-data; boundary=----WebKitFormBoundarybBB5cLUAHBBnBkDA',
}
session.headers.update(headers)
img_search_url = 'https://s.taobao.com/image'

data = {"mimeType": "multipart/form-data; boundary=----WebKitFormBoundarybBB5cLUAHBBnBkDA",
        "text": "------WebKitFormBoundarybBB5cLUAHBBnBkDA\r\nContent-Disposition: form-data; name=\"imgfile\"; "
                "filename=\"test1.png\"\r\nContent-Type: image/png"
                "\r\n\r\n\r\n------WebKitFormBoundarybBB5cLUAHBBnBkDA--\r\n"}

r = session.post(img_search_url, files={'file': open('test1.png', 'rb')}, data=data)
print(r.text)


Но возвращает ошибку
{"status":0,"error":true,"errorCode":"508","errorMsg":"请重新上传试试","extraInfo":""}

(ошибка переводится как "Попробуйте повторно загрузить")
Что делаю не так?
  • Вопрос задан
  • 220 просмотров
Решения вопроса 1
dimonchik2013
@dimonchik2013
non progredi est regredi
гы гы
шли на английский урл- не нужно будет переводить ( подсказка - куки придется выставить)

рецепт смотри тут
Как авторизоваться на почте с Python?
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы