我有一个问题。 是否可以在服务器(amazon ec2)上运行python脚本,该脚本使用selenium从动态网站抓取数据。 我试图多次查找有关此的信息,但这没有结果。
谢谢大家!
答案 0 :(得分:2)
服务器不使用GUI / Windows,甚至没有监视器。 它被称为“无头”服务器(因为监视器看起来像服务器的头)
Selenium运行Web浏览器,该浏览器需要GUI / Windows来显示其窗口。
但是某些Web浏览器也可以在不显示窗口的情况下运行-它们可以运行headless
。
from selenium.webdriver.chrome.options import Options
chrome_options = Options()
chrome_options.add_argument("--headless")
driver = webdriver.Chrome(chrome_options=chrome_options)
对于Firefox应该是类似的代码。
还有Selenium的网络驱动器PhantomJS可以正常运行,但现在不再开发了。
Linux还具有程序Xvfb,该程序可以在无头电脑上创建伪造/虚拟的监视器,并且可以运行没有GUI / XWindows才能运行的程序。
我没有检查它,但其中一种方法可能在Amazon EC2上可用。