[英]Error “Cannot connect to X server” with Python program webkit2png
當我在我的SSH服務器上使用webkit2png時,我收到錯誤:“無法連接到X服務器:0.0”Webkit2png是一個包含html頁面的PNG屏幕截圖的軟件包。 在我的電腦上,它工作得很好,但在SSH服務器上沒有; 它不會創建一個PNG圖像。
它只在我執行此命令時有效:
xvfb-run -a -s "-screen 0 640x480x16" python webkit2pngProgram.py
但這是一個Unix命令,而不是Python代碼。
webkit2pngProgram代碼:
from webkit2png import WebkitRenderer, init_qtgui
from PyQt4.QtCore import QTimer
def renderer_func():
renderer = WebkitRenderer()
renderer.width = 550
renderer.height = 500
renderer.timeout = 10
renderer.wait = 1
renderer.format = "png"
renderer.grabWholeWindow = False
y = Program()
outfile = open("/image.png", "w")
renderer.render_to_file("/test.html", file=outfile)
outfile.close()
def start():
app = init_qtgui() ###### => STUCKS HERE
QTimer.singleShot(0, renderer_func)
app.exec_()
if __name__ == "__main__":
start()
謝謝你的幫助!
您需要首先運行xvfb
unix命令( X虛擬幀緩沖區 )
server_num = int(os.getpid() + 1e6)
newArgs = ["xvfb-run", "--auto-servernum", "--server-num", str(server_num), "--server-args=-screen 0, %dx%dx24" % (1024, 768), sys.argv[0], '-g','1024', '768']
os.execvp(newArgs[0],newArgs[1:])
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.