HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > Общие вопросы программирования
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 31.08.2021, 12:28
KhanWarden
Познающий
Регистрация: 29.08.2019
Сообщений: 42
С нами: 3531955

Репутация: 58
По умолчанию

Вот начал изучать пайтон. Написал первый скрипт, который автоматически будет принимать игру в доте. Сделал поиск по картинке на экране в pyautogui, но загвоздка в том, что он отключается через секунду. То есть как включается скрипт в течение секунды если не найдется на экране картинка как на скриншоте, то отключается. Как создать бесконечный цикл, чтобы он работал всегда и не выключался даже после принятия игры?

Python:





Код:
import
pyautogui

screen
=
'C:/Users/Khan/Desktop/start.png'
# Местоположение скриншота
start
=
pyautogui
.
locateOnScreen
(
screen
,
confidence
=
0.9
)
pyautogui
.
click
(
start
)
 
Ответить с цитированием

  #2  
Старый 02.09.2021, 22:58
pomidorq
Участник форума
Регистрация: 17.04.2020
Сообщений: 184
С нами: 3197792

Репутация: 83
По умолчанию

Попробуй так:

Python:





Код:
import
pyautogui
import
time

screen
=
'C:/Users/Khan/Desktop/start.png'
def
check_game
(
screen
)
:
try
:
start
=
pyautogui
.
locateOnScreen
(
screen
,
confidence
=
0.9
)
except
:
pass
else
:
pyautogui
.
click
(
start
)
while
True
:
check_game
(
screen
)
time
.
sleep
(
0.5
)


Скорее всего закрывается потому, что при отсутствии изображении на экране происходит ошибка ImageNotFoundException (информация из документации pyautogui), а при возникновении ошибок скрипт автоматически прекратит работу. Чтобы не прекращал существуют блоки try-except-else, которые при возникновении ошибок могут их игнорировать, либо принимать какие то действия, в твоём случае ошибка будет игнорироваться зарезервированным словом pass, которое просто ничего не делает.

Конкретно не советую использовать python скрипты в играх, во первых они работают не корректно, через раз, во вторых бесконечный цикл нагружает ПК. Для доты купи какой нибудь октарин, либо скачай бесплатный овервульф, там есть автопринятие игры.

Если будешь в будущем "искать" изображения на экране - используй OpenCV.

Удачи.
 
Ответить с цитированием

  #3  
Старый 02.09.2021, 23:40
Rei
Познавший АНТИЧАТ
Регистрация: 18.06.2017
Сообщений: 1,632
С нами: 4686777

Репутация: 183


По умолчанию

Цитата:
Сообщение от devilgoat  

Если будешь в будущем "искать" изображения на экране - используй OpenCV.
Удачи.
пайавтогуй и так использует opencv 😉
 
Ответить с цитированием

  #4  
Старый 02.09.2021, 23:57
pomidorq
Участник форума
Регистрация: 17.04.2020
Сообщений: 184
С нами: 3197792

Репутация: 83
По умолчанию

Цитата:
Сообщение от Rei  

пайавтогуй и так использует opencv 😉
А зачем усложнять работу скрипту, вызывая одну библиотеку которая использует другую, и предназначена не только для работы с изображениями?
 
Ответить с цитированием

  #5  
Старый 03.09.2021, 00:27
Rei
Познавший АНТИЧАТ
Регистрация: 18.06.2017
Сообщений: 1,632
С нами: 4686777

Репутация: 183


По умолчанию

Цитата:
Сообщение от devilgoat  

А зачем усложнять работу скрипту, вызывая одну библиотеку которая использует другую, и предназначена не только для работы с изображениями?
ну тк он с pyatogui не только ищет изображение, а еще и кликает. т.е. зачем городить левую дрочь, если можно той же либой устроить все одной строчкой?

такой вариант плох только тем, что он по всему экрану ищет и производительность будет желать лучшего
 
Ответить с цитированием

  #6  
Старый 03.09.2021, 01:15
pomidorq
Участник форума
Регистрация: 17.04.2020
Сообщений: 184
С нами: 3197792

Репутация: 83
По умолчанию

Цитата:
Сообщение от Rei  

ну тк он с pyatogui не только ищет изображение, а еще и кликает. т.е. зачем городить левую дрочь, если можно той же либой устроить все одной строчкой?

такой вариант плох только тем, что он по всему экрану ищет и производительность будет желать лучшего
Окей, насчёт клика я не прав. Но во всяком случае только для поиска изображений на экране, я считаю нужно юзать сразу opencv.
 
Ответить с цитированием
Ответ



Предыдущая тема Следующая тема

Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.