首先,总体而言,我正在努力实现的是基本机器(如在VPS中)通过Firefox使用Python运行自动化任务。
现在的目标或目标是让Firefox在浏览器中运行给定的任务,然后使用VNC连接连接到VPS(通过浏览器),并控制或发布任务以及该VPS(这是那部分我遇到了麻烦);同时尽可能减少内存,以实现最高效率。
举个例子,如果您使用过Digital Ocean,可以在当前浏览器中查看VPS的特定屏幕或终端。
要明确的是,我用来运行基本进程的VPS OS是Linux,尽管程序连接的VPS(通过浏览器)使用的是Windows操作系统。像这样的东西可以说(注意我没有截图):
我的问题在于,在使用Python中的Selenium(使用Firefox)运行所有脚本任务后,一旦我在浏览器中打开VPS,我就无法弄清楚如何正确访问它或发布作业完成。
我想过可能使用鼠标点击的(x,y)坐标,虽然我不能说这会完全奏效(我用iMacros进行了测试,但还不是Selenium)。
简而言之,我在Firefox中运行基本任务,然后连接到VPS,最后发布更多任务,从Firefox到使用Windows操作系统环境的VPS完成。
关于如何使这个过程更简单,更有效或更可靠的建议?
答案 0 :(得分:1)
java中有一个名为Robot类的类,它可以处理几乎所有的键盘操作
python gtk.gdk.Display
中存在一个similer事物。
请参阅以下内容: -
Is there a Python equivalent to Java's AWT Robot class?
Take a screenshot via a python script. [Linux]
OR
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());
}
希望它会对你有所帮助:)。