AlexDarkStalker
@AlexDarkStalker
Хочу научится программировать на Python

Как отправить POST запрос на сайт с помощью Python?

1)Мне нужно отправить запрос с текстом на сайт яндекс переводчика в поле ввода
2)Запарсить перевод из поля вывода
Пошарился в HTML переводчика:
В общем, поле ввода имеет такой кусок кода:
<div id="fakeArea" class="fakearea textinput textlayer" tabindex="0" autocorrect="off" autocomplete="off" autocapitalize="off" spellcheck="false" contenteditable="plaintext-only">I love python</div>

А исследовав окно вывода получился такой кусок кода:
<pre id="translation" class="textinput textlayer translation state-fadeaway" tabindex="1"><span data-complaint-type="fullTextTranslation" data-complaint-target="true"><span class="translation-chunk" data-align="2:6">Я люблю</span> <span class="translation-chunk" data-align="7:13">Питона</span></span></pre>
  • Вопрос задан
  • 7943 просмотра
Решения вопроса 3
@Bjornie
Изучаю Python
Посмотрел куда отправляются данные, и вроде бы сюда идет текст для перевода: https://speller.yandex.net/services/spellservice.j... Но возвращается с другого адреса. Пробуйте.

А вообще отправить с помощью Python делается вот так:
import requests # To install from pip
requests.post(url, headers={'UA': 'Chrome'}, data={"foo": 'bar'})
res = requests.get(url)
print(res.text)
Ответ написан
Комментировать
adugin
@adugin Куратор тега Python
1) Банальная отправка: https://translate.yandex.ru/?lang=en-ru&text=Just%... (нужно будет обработать все редиректы). Либо checkText, но тогда надо всякие хитрые id сессии отправлять.
2) Из полученного заберите перевод.
Ответ написан
Комментировать
@afydoz
Вчерашний школьник.
Нет нужды парсить страницу. У Яндекс Переводчика есть официальный API
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы