Python scrypt YandexTranslate

dhr23

Newbie
13.11.2019
1
0
Скрипт должен выбрать языки для перевода, загрузить jpg изображения, имитировать нажатие кнопки для перевода и извлечь переведенный текст в файл.
Подскажите, что нужно поправить для корректного исполнения части с заргузкой и отправкой?

Python:
import requests
import lxml.html as html
import cssselect
import os
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver import Firefox
from selenium.webdriver.firefox.options import Options
from selenium.webdriver.common.by import By

user_agent = 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.7) Gecko/2009021910 Firefox/3.0.7'
headers={'User-Agent':user_agent,}

sessionObj = requests.session()
url = "https://translate.yandex.com/ocr"

driver = webdriver.Firefox()
driver.get(url)

values = {
    "button button_tab state-selected" : "Image",
    "sourceLangButton" : "ko",
    "targetLangButton" : "ru",
   }

r = sessionObj.post(url, data=values)

# элемент <input type="file">
element = driver.find_element_by_type("file")
element.send_keys(os.getcwd() + "name.jpg" )

print(element.get_attribute("type"))
driver.close()

browser = webdriver.Firefox()
browser.get(url)
myelement = browser.find_element_by_class("button")
driver.myelement('button[ng-click="func()"]')

Задействуемые участки кода сайта:
HTML:
<span id="sourceLangButton" class="button button_select button_select_source" tabindex="-1">Korean</span>
<span id="targetLangButton" class="button button_select button_select_target" tabindex="-1">Russian</span>


<span class="button" data-action="paste">Open in Yandex.Translate</span>


<input id="fileInput" type="file" accept="image/*" required="required">
<span class="link" data-action="selectImage">Select file</span>
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab

Похожие темы

🚀 Первый раз на Codeby?
Гайд для новичков: что делать в первые 15 минут, ключевые разделы, правила
Начать здесь →

Популярный контент

🔴 Свежие CVE, 0-day и инциденты
То, о чём ChatGPT ещё не знает — обсуждаем в реальном времени
Threat Intel →
💼 Вакансии и заказы в ИБ
Pentest, SOC, DevSecOps, bug bounty — работа и проекты от проверенных компаний
Карьера в ИБ →

HackerLab