我在这里查看了多处理,在大多数情况下,我已经缩小了范围,但最后一点由于某种原因失败了。
语境
我有一个连接到的远程网络服务器,我已将 HTTP 页面转发到本地端口。我需要连接到远程主机,当我连接时,我需要在本地机器上打开 HTTP 页面并捕获该页面。
代码
from selenium import webdriver
from pyvirtualdisplay import Display
import paramiko
import multiprocessing
import time
def grabscreendisplay():
time.sleep(10)
print('running display code now... ')
display = Display(size=(1024, 768), visible=0)
display.start()
driver=webdriver.Chrome('/usr/local/bin/chromedriver')
URL="http://localhost:9012"
driver.get(URL)
screenshot=driver.save_screenshot('my_screenshot.png')
driver.quit()
def getserver():
SERV = raw_input('Please enter the server you would like to connect to: ')
return SERV
def connect_to_server(SERV):
print(SERV)
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
print('Connecting to ' + SERV)
ssh.connect(SERV, username='root', key_filename='...')
connected = True
print('Connected to ' + SERV)
time.sleep(30)
def main():
SERV = getserver()
p1 = multiprocessing.Process(name='p1', target=connect_to_server(SERV))
p2 = multiprocessing.Process(name='p2', target=grabscreendisplay())
p2.start()
p1.start()
if __name__ == "__main__":
main()
面临的问题
.png 仅显示与端口的连接失败('localhost 拒绝连接')