2016-03-16 2 views
0

Итак, во-первых, в целом то, что я пытаюсь выполнить, - это базовая машина (как в VPS) для запуска автоматизированной задачи через Firefox с использованием Python.Автоматизация задач через соединение VNC в браузере

Теперь цель или цель состоит в том, чтобы Firefox выполнял заданные задачи в самом браузере, хотя затем подключился к VPS (через браузер) с помощью VNC-соединения, а также для управления или выдачи задач для этого VPS (это это та часть, с которой я столкнулся); так как для максимальной эффективности требуется как можно меньше памяти.

Чтобы привести пример, если вы использовали Digital Ocean, вы можете просмотреть конкретный экран или терминал VPS в текущем браузере.

Чтобы быть ясным, VPS OS, который я использую для запуска базового процесса, - это Linux, хотя VPS, к которому программа подключается (через браузер), использует ОС Windows. Что-то такое, как это, скажем, (заметьте, я не скриншот этого):

enter image description here

Моя проблема заключается в том, что после запуска через все скриптовых задач с использованием Selenium в Python (с Firefox), когда я открываю VPS в браузере, я не могу понять, как правильно обращаться к нему или задавать задания.

Я думал о возможностях использования (x, y) координат для щелчков мыши, хотя я не могу сказать, что это точно сработало бы (я тестировал его с помощью iMacros, хотя еще не Selenium).

Итак, вначале я запускаю базовые задачи в Firefox, а затем подключился к VPS и, наконец, выпустил больше задач, которые должны быть завершены из Firefox на тот VPS, который использует среду ОС Windows.

Предложения о том, как сделать этот процесс более простым, эффективным или повысить его надежность?

ответ

1

Существует класс в Java называется Robot класс, который может обрабатывать почти все операции клавиатуры

Существует similer вещь присутствует в питона gtk.gdk.Display.

см ниже: -

Is there a Python equivalent to Java's AWT Robot class?

Take a screenshot via a python script. [Linux]

ИЛИ

Python ctypes keybd_event simulate ctrl+alt+delete

Демо-код Java: -

try{ 
    Robot robot = new Robot(); 
    robot.keyPress(KeyEvent.VK_CONTROL); 
    robot.keyPress(KeyEvent.VK_ALT); 
    robot.keyPress(KeyEvent.VK_DELETE); 
    robot.keyRelease(KeyEvent.VK_CONTROL); 
    robot.keyRelease(KeyEvent.VK_ALT); 
    robot.keyRelease(KeyEvent.VK_DELETE); 

} 
catch(Exception ex) 
{ 
    System.out.println(ex.getMessage()); 
} 

Надеюсь, это вам поможет :)

Смежные вопросы