Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 24, 2011 10:50:34

plusplus
От:
Зарегистрирован: 2009-01-05
Сообщения: 418
Репутация: +  15  -
Профиль   Отправить e-mail  

Автоматизировать RDP.

Вопрос немного косвенный по отношению к Python.
Вот с SSH всё понятно. Если знаешь логин пароль, качаешь специальный модуль и пишешь скрипт для автоматизации. А как быть с рдп? Есть логин, пароль, хост, как запрограммировать набор действий, например, чтобы скрипт заходил по рдп и запускал программу? Если есть доступ по RDP, то может может можно до командной строки достучаться? Смотрел Psexec, думал то, что надо, но оказалось для этой утилиты должна быть расшарена папка admin$. Есть у кого-нибудь какие-нибудь варианты решения моей задачи?



Офлайн

#2 Окт. 24, 2011 18:13:37

Ed
От:
Зарегистрирован: 2008-12-13
Сообщения: 1032
Репутация: +  13  -
Профиль   Отправить e-mail  

Автоматизировать RDP.

попробуйте это: http://pypi.python.org/pypi/pexpect/



Офлайн

#3 Окт. 25, 2011 06:32:58

plusplus
От:
Зарегистрирован: 2009-01-05
Сообщения: 418
Репутация: +  15  -
Профиль   Отправить e-mail  

Автоматизировать RDP.

М, можно чуть подробней? Как этим модулем контролировать rdp?



Офлайн

#4 Окт. 25, 2011 16:43:17

Ed
От:
Зарегистрирован: 2008-12-13
Сообщения: 1032
Репутация: +  13  -
Профиль   Отправить e-mail  

Автоматизировать RDP.

Сорри, я не знаю что есть rdp. Подозреваю что Remote Desktop Protocol, но не уверен. Я отвечал на вашу фразу “может можно до командной строки достучаться?”. Expect - это как раз стандартное средство для работы с консольными тулзами, которые требуют ввода пользователем чего-либо. На нем можно программировать достаточно сложные сценарии. А pexpect - это питоновый интерфейс к нему. Пардон, если не в тему.



Офлайн

#5 Окт. 26, 2011 00:49:49

sypper-pit
От: Ulan-Ude(msk)
Зарегистрирован: 2009-01-30
Сообщения: 1102
Репутация: +  6  -
Профиль   Отправить e-mail  

Автоматизировать RDP.

для клиента у вас какая ОС используется ? просто если винда можно попробовать использовать стандартный клиент и модульSendKeys + для управлением мыши:

from ctypes import *
user = windll.user32
x = 640
y= 480
user.SetCursorPos(x,y)

Офлайн

#6 Окт. 26, 2011 00:59:35

sypper-pit
От: Ulan-Ude(msk)
Зарегистрирован: 2009-01-30
Сообщения: 1102
Репутация: +  6  -
Профиль   Отправить e-mail  

Автоматизировать RDP.

import ctypes

ctypes.windll.user32.SetCursorPos(203,117)

ctypes.windll.user32.mouse_event(2, 0, 0, 0,0) # left down

ctypes.windll.user32.mouse_event(4, 0, 0, 0,0) # left up

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version