Как можно считать текст с картинки или с браузера
Есть определённый сайт, в который каждый день надо подтверждать определенных людей.
Есть ли способ считать информацию, кто есть в откликах, и подтвердить только определённых людей (т.е. получить координаты кнопки и нажать на нее)?
Нужна помощь, чтобы какой-то скрипт на питоне опознал, что за человек есть в откликах. Есть ли какой-то способ, как это сделать? И чтобы несильно загружал пк, потому что это удалённый пк и он не мощный.
<div>
<div class="v-dialog__container" persistent="">
<!---->
</div>
<div class="my-5 pa-5 rounded-lg v-card v-sheet v-sheet--outlined theme--light" style="border-color: rgb(21, 183, 66);">
<div class="row align-center">
<div class="col"><span class="rounded-xl px-8 font-weight-regular white--text v-chip theme--light v-size--default primary"><span class="v-chip__content">Есть отклик</span></span>
</div>
<div class="col">
<div class="spacer"></div>
</div>
<div class="col">
<div class="spacer"></div>
</div>
<div class="col">
<p class="subtitle-1 mb-0 primary--text text-right">Количество откликов: 1</p>
</div>
<div class="col col-auto"><button type="button" class="v-btn v-btn--icon v-btn--round theme--light v-size--default primary--text"><span class="v-btn__content"><i aria-hidden="true" class="v-icon notranslate mdi mdi-eye theme--light"></i></span></button></div>
</div>
<div class="row align-content-center">
<div class="col">
<div class="mb-3">
<p class="text-h6 mb-0">Сборка интернет-заказов (Казань)</p>
<p>№0</p>
<p>ул.адрес</p>
</div>
</div>
<div class="col">
<p class="subtitle-1 font-weight-light grey--text mb-0">Казань</p>
<p class="subtitle-1 font-weight-light grey--text">180 ₽</p>
</div>
<div class="col">
<p class="subtitle-1 font-weight-light mb-0 grey--text">07.01.2024</p>
<p class="subtitle-1 font-weight-light grey--text"> 08:00</p>
</div>
<div class="col col-auto"><button type="button" class="mx-2 v-btn v-btn--fab v-btn--outlined v-btn--round theme--dark v-size--default primary--text"><span class="v-btn__content"><i aria-hidden="true" class="v-icon notranslate mdi mdi-chevron-up-circle-outline theme--dark"></i></span></button></div>
<div
class="col col-auto"><button type="button" class="v-btn v-btn--outlined v-btn--rounded theme--light v-size--large primary--text"><span class="v-btn__content">Отменить</span></button></div>
</div>
<div>
<div><i aria-hidden="true" class="v-icon notranslate mdi mdi-star theme--light amber--text"></i><span class="font-weight-black">4.95</span></div>
<div class="row">
<div class="col"><a class="subtitle-1 font-weight-bold text-decoration-underline black--text mb-0"> Фамилия имя отчество </a><span class="text-h6"></span></div>
<div class="col">
<p class="subtitle-1 font-weight-light grey--text mb-0">+12345678910</p>
</div>
<div class="col">
<p class="subtitle-1 font-weight-light grey--text mb-0">Нет комментария</p>
</div>
<div class="col">
<div class="spacer"></div>
</div>
<div class="col col-auto"><button type="button" class="v-btn v-btn--outlined v-btn--rounded theme--light v-size--large primary--text"><span class="v-btn__content">Одобрить</span></button></div>
</div>
</div>
</div>
</div>
Ответы (1 шт):
pip install -U selenium
Драйвер для FireFox - geckodriver-v0.34.0-win32.zip
Наличие самого браузера FireFox обязательно.
Пример:
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.firefox.service import Service as FirefoxService
from selenium.webdriver.firefox.options import Options
# Путь к исполняемому файлу драйвера Firefox (GeckoDriver)
gecko_driver_path = r'C:\Users\Amgarak\Downloads\geckodriver-v0.34.0-win32\geckodriver.exe'
# Путь к исполняемому файлу браузера Firefox
firefox_binary_path = r'C:\Program Files\Mozilla Firefox\firefox.exe'
# Инициализация опций браузера Firefox
firefox_options = Options()
firefox_options.binary_location = firefox_binary_path
# Инициализация сервиса для драйвера Firefox
firefox_service = FirefoxService(executable_path=gecko_driver_path)
# Инициализация веб-драйвера с указанием сервиса и опций
driver = webdriver.Firefox(service=firefox_service, options=firefox_options)
# Открытие веб-страницы
driver.get("https://ru.stackoverflow.com/questions/1560508/Как-можно-считать-текст-с-картинки-или-с-браузера?noredirect=1#comment2809998_1560508")
# Ожидание появления элемента (замените "xpath" на нужный селектор)
element_xpath = "/html/body/div[4]/div[2]/div/div[1]/div[3]/div[1]/div[2]/div[3]/div[1]/ul/li[1]/div[2]/div/div"
element = WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.XPATH, element_xpath)))
# Нажатие на элемент
element.click()
# Ожидание появления нового элемента
element_xpath = "/html/body/div[3]/div[2]/div/div[3]/div/div[2]/div/div[2]/div[2]/div"
element = WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.XPATH, element_xpath)))
# Получение текстового содержимого элемента
element_text = element.text
print("Содержимое блока:", element_text)
# Закрытие браузера
#driver.quit()
Что бы получить нужный селектор(xpath): FireFox -> ПКМ(мышка) по странице -> Исследовать -> Выбрать элемент со страницы(пиктограмма мышки слева) -> находим нужный div -> щелкаем по нему ЛКМ -> затем щелкаем ПКМ по нему же -> Копировать -> Xpath
