通过浏览器中的VNC连接实现任务自动化

2024-04-25 15:05:34 发布

您现在位置:Python中文网/ 问答频道 /正文

因此,首先,我要做的是让一台基本机器(比如在VPS中)使用Python通过Firefox运行自动任务。在

现在的目标是让Firefox在浏览器中运行给定的任务,但随后使用VNC连接(通过浏览器)连接到VPS,并控制或向该VPS发出任务(这是我遇到问题的部分);同时还需要尽可能少的内存来实现最大效率。在

举个例子,如果您使用过Digital Ocean,您可以在当前浏览器中查看VPS的特定屏幕或终端。在

明确地说,我用来运行基本进程的VPS操作系统是Linux,尽管程序连接的VPS(通过浏览器)使用的是Windows操作系统。像这样的东西,比如说(注意我没有截图):

enter image description here

我的问题在于,在Python(Firefox)中使用Selenium运行了所有脚本化任务之后,一旦在浏览器中打开VPS,我就不知道如何正确地访问它或发出要完成的作业。在

我曾考虑过也许可以使用(x,y)坐标来点击鼠标,但我不能说这确实有效(我用iMacros测试了它,尽管还没有使用Selenium)。在

简单地说,我在Firefox中运行基本任务,然后连接到VPS,最后从Firefox向使用Windows操作系统环境的VPS发出更多要完成的任务。在

关于如何使这个过程更简单、更有效或更可靠的建议?在


Tags: 内存机器终端目标屏幕vpswindowsselenium
1条回答
网友
1楼 · 发布于 2024-04-25 15:05:34

java中有一个类叫做Robot类,可以处理几乎所有的键盘操作

python中有一个类似的东西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());
 }

希望对您有帮助:)

相关问题 更多 >

    热门问题