본문 바로가기
파이썬

파이썬 Xvfb에서 Selenium을 어떻게 실행합니까?

by º기록 2020. 10. 2.
반응형

저는 EC2 인스턴스에 있습니다. 따라서 GUI가 없습니다.

$pip install selenium
$sudo apt-get install firefox xvfb

그런 다음 이렇게합니다.

$Xvfb :1 -screen 0 1024x768x24 2>&1 >/dev/null &

$DISPLAY=:1 java -jar selenium-server-standalone-2.0b3.jar
05:08:31.227 INFO - Java: Sun Microsystems Inc. 19.0-b09
05:08:31.229 INFO - OS: Linux 2.6.32-305-ec2 i386
05:08:31.233 INFO - v2.0 [b3], with Core v2.0 [b3]
05:08:32.121 INFO - RemoteWebDriver instances should connect to: http://127.0.0.1:4444/wd/hub
05:08:32.122 INFO - Version Jetty/5.1.x
05:08:32.123 INFO - Started HttpContext[/selenium-server/driver,/selenium-server/driver]
05:08:32.124 INFO - Started HttpContext[/selenium-server,/selenium-server]
05:08:32.124 INFO - Started HttpContext[/,/]
05:08:32.291 INFO - Started org.openqa.jetty.jetty.servlet.ServletHandler@1186fab
05:08:32.292 INFO - Started HttpContext[/wd,/wd]
05:08:32.295 INFO - Started SocketListener on 0.0.0.0:4444
05:08:32.295 INFO - Started org.openqa.jetty.jetty.Server@1ffb8dc

좋습니다. 이제 모든 것이 작동합니다.

내 코드를 실행할 때 :

from selenium import webdriver
from selenium.common.exceptions import NoSuchElementException
from selenium.webdriver.common.keys import Keys

browser = webdriver.Firefox() 
browser.get("http://www.yahoo.com") 

나는 이것을 얻는다 :

Error: cannot open display: :0

 

해결 방법

 

터미널을 열고 xhost + 명령을 실행하십시오. 이 명령은 컴퓨터를 다시 시작할 때마다 실행해야합니다. 모든 것이 잘 작동하면 시작 명령에 이것을 추가 할 수 있습니다.

또한 / etc / environment 파일에 행이 있는지 확인하십시오.

export DISPLAY=:0.0 

그런 다음 테스트를 실행하여 문제가 해결되었는지 확인하십시오.

모두 이것을 사용하기 전에 아래 sardathrion의 주석을 참고하십시오.

 

참조 페이지 https://stackoverflow.com/questions/6183276

 

 

반응형

댓글