πŸ” Как Π½Π°ΠΉΡ‚ΠΈ Π½Π° экранС ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠΈ ΠΊΠ»ΠΈΠΊΠ½ΡƒΡ‚ΡŒ ΠΏΠΎ Π½Π΅ΠΉ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Python?

Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π°ΠΉΡ‚ΠΈ ΠΊΠ½ΠΎΠΏΠΊΡƒ Π½Π° экранС ΠΈ ΠΊΠ»ΠΈΠΊΠ½ΡƒΡ‚ΡŒ ΠΏΠΎ Π½Π΅ΠΉ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Python, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ PyAutoGUI.


# Установка Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ PyAutoGUI
pip install pyautogui

import pyautogui

# ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π½Π° экранС
button_position = pyautogui.locateOnScreen('button.png')

# Клик по кнопкС
pyautogui.click(button_position)
    

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ сначала устанавливаСм Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ PyAutoGUI, Π·Π°Ρ‚Π΅ΠΌ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌ Π΅Π΅ ΠΈ Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ locateOnScreen, которая позволяСт Π½Π°ΠΉΡ‚ΠΈ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π½Π° экранС, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, 'button.png'). Π—Π°Ρ‚Π΅ΠΌ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ click, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠ»ΠΈΠΊ ΠΏΠΎ Π½Π°ΠΉΠ΄Π΅Π½Π½ΠΎΠΉ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ.

Π”Π΅Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚

Как Π½Π°ΠΉΡ‚ΠΈ Π½Π° экранС ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠΈ ΠΊΠ»ΠΈΠΊΠ½ΡƒΡ‚ΡŒ ΠΏΠΎ Π½Π΅ΠΉ Python?

Python - это ΠΌΠΎΡ‰Π½Ρ‹ΠΉ язык программирования, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ взаимодСйствиС с Π²Π΅Π±-страницами. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ рассмотрим, ΠΊΠ°ΠΊ Π½Π°ΠΉΡ‚ΠΈ ΠΊΠ½ΠΎΠΏΠΊΡƒ Π½Π° экранС ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠ»ΠΈΠΊ Π½Π° Π½Π΅ΠΉ с использованиСм Python.

Π¨Π°Π³ 1: Установка Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Selenium

Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π²Π΅Π±-страницами ΠΈ выполнСния Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… дСйствий, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΊΠ»ΠΈΠΊ ΠΏΠΎ ΠΊΠ½ΠΎΠΏΠΊΠ΅, ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ Selenium. Для установки Selenium, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Π² вашСй ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкС:


pip install selenium

Π¨Π°Π³ 2: Π˜ΠΌΠΏΠΎΡ€Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ

ПослС установки Selenium, ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ Π² нашСм скриптС Python:


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

Π¨Π°Π³ 3: Запуск Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° ΠΈ поиск ΠΊΠ½ΠΎΠΏΠΊΠΈ

Π’Π΅ΠΏΠ΅Ρ€ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°ΠΉΡ‚ΠΈ ΠΊΠ½ΠΎΠΏΠΊΡƒ Π½Π° Π²Π΅Π±-страницС, ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ сначала Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ Π½ΡƒΠΆΠ½ΡƒΡŽ страницу. Π”Π°Π»Π΅Π΅ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Selenium для поиска ΠΊΠ½ΠΎΠΏΠΊΠΈ.


# Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ экзСмпляра Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°
driver = webdriver.Chrome("ΠΏΡƒΡ‚ΡŒ_ΠΊ_Ρ„Π°ΠΉΠ»Ρƒ_Π΄Ρ€ΠΉΠ²Π΅Ρ€Π°_chrome")

# ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ страницы
driver.get("url_Π²Π΅Π±_страницы")

# Поиск ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΏΠΎ Π΅Π΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρƒ id
button = driver.find_element(By.ID, "id_ΠΊΠ½ΠΎΠΏΠΊΠΈ")

# Клик по кнопкС
button.click()

Шаг 4: ОТиданиС кнопки и клик

Иногда ΠΊΠ½ΠΎΠΏΠΊΠ° Π½Π° страницС ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ скрыта ΠΈΠ»ΠΈ Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒΡΡ с нСбольшой Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ. Π§Ρ‚ΠΎΠ±Ρ‹ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΊΠ½ΠΎΠΏΠΊΠ° доступна для ΠΊΠ»ΠΈΠΊΠ°, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠ΅.


# ОТиданиС, ΠΏΠΎΠΊΠ° ΠΊΠ½ΠΎΠΏΠΊΠ° станСт кликабСльной
wait = WebDriverWait(driver, 10)
button = wait.until(EC.element_to_be_clickable((By.ID, "id_ΠΊΠ½ΠΎΠΏΠΊΠΈ")))

# Клик по кнопкС
button.click()

Π¨Π°Π³ 5: Π—Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

ПослС выполнСния всСх Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… дСйствий, Π½Π΅ Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€:


# Π—Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°
driver.quit()

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ скрипта


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

# Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ экзСмпляра Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°
driver = webdriver.Chrome("ΠΏΡƒΡ‚ΡŒ_ΠΊ_Ρ„Π°ΠΉΠ»Ρƒ_Π΄Ρ€ΠΉΠ²Π΅Ρ€Π°_chrome")

# ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ страницы
driver.get("url_Π²Π΅Π±_страницы")

# ОТиданиС, ΠΏΠΎΠΊΠ° ΠΊΠ½ΠΎΠΏΠΊΠ° станСт кликабСльной
wait = WebDriverWait(driver, 10)
button = wait.until(EC.element_to_be_clickable((By.ID, "id_ΠΊΠ½ΠΎΠΏΠΊΠΈ")))

# Клик по кнопкС
button.click()

# Π—Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°
driver.quit()

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ этих шагов Π²Ρ‹ смоТСтС Π½Π°ΠΉΡ‚ΠΈ ΠΊΠ½ΠΎΠΏΠΊΡƒ Π½Π° Π²Π΅Π±-страницС ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠ»ΠΈΠΊ Π½Π° Π½Π΅ΠΉ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Python. Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Ρƒ вас установлСны Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΈ ΡƒΠΊΠ°Π·Π°Π½ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ ΠΏΡƒΡ‚ΡŒ ΠΊ Ρ„Π°ΠΉΠ»Ρƒ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°.

Π’ΠΈΠ΄Π΅ΠΎ ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅

КликаСм ΠΏΠΎ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌ Python/Selenium

Как Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ тСкст ΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΏΠΎ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌ Python tkinter

АвтокликСр Π½Π° Python #2. Поиск Ρ†Π²Π΅Ρ‚Π° Π½Π° экранС

ΠŸΠΎΡ…ΠΎΠΆΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ:

Как ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ scikit-learn python: подробная инструкция

КАК ΠŸΠžΠœΠ•ΠΠ―Π’Π¬ Π’Π‘Π• Π‘Π£ΠšΠ’Π« НА ЗАГЛАВНЫЕ Π’ PYTHON? πŸπŸ” 

Как Π½Π°ΠΉΡ‚ΠΈ арксинус Π² ΠŸΠΈΡ‚ΠΎΠ½Π΅: простая инструкция с ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ 🐍

πŸ” Как Π½Π°ΠΉΡ‚ΠΈ Π½Π° экранС ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠΈ ΠΊΠ»ΠΈΠΊΠ½ΡƒΡ‚ΡŒ ΠΏΠΎ Π½Π΅ΠΉ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Python?

πŸ”₯ Как мастСрски Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ΡŒ Ρ†ΠΈΠΊΠ» while Π² Python?

Π§Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ для программирования Π½Π° python? πŸπŸ“š

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π»ΠΈΡ‚Π΅Ρ€Π°Π»ΡŒΠ½Ρ‹Π΅ константы Π² Python 🐍? Π£Π·Π½Π°ΠΉΡ‚Π΅ всС ΠΎΠ± этом Π±Π°Π·ΠΎΠ²ΠΎΠΌ понятии!