硒在Google实验室中不起作用(不弹出新的Chrome)

时间:2019-07-07 08:31:28

标签: python selenium google-colaboratory

我在Google合作实验室的Selenium中遇到了麻烦。

我尝试自动登录我所在国家的门户网站。 我了解到,当我运行代码时,应该打开新的Chrome窗口。

但是我运行了下面的代码,即使没有错误消息也什么也没发生。

!apt install chromium-chromedriver
!cp /usr/lib/chromium-browser/chromedriver /usr/bin
from selenium import webdriver
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument('--headless')
chrome_options.add_argument('--no-sandbox')
chrome_options.add_argument('--disable-dev-shm-usage')
wd = webdriver.Chrome('chromedriver',chrome_options=chrome_options)

wd.get("https://nid.naver.com/nidlogin.login")

sleep(0.5)
wd.find_element_by_name('id').send_keys('ID')
sleep(0.5)
wd.find_element_by_name('pw').send_keys('password')

跑步结束,但没有任何结果... 如何获得新窗口?

1 个答案:

答案 0 :(得分:0)

Google Colaboratory在服务器上运行代码,Chrome也在服务器上运行-因此,Chrome只能在连接到该服务器的监视器上显示,而您看不到该监视器。而且,无法将图像从服务器的显示器重定向到显示器-显示器上的Google Colaboratory窗口。


如果要在计算机上运行它,则不会看到Chrome,因为您使用了选项“ --headless”(表示“不显示窗口”)。由于服务器通常没有监视器(服务器被称为“无头服务器”,因为监视器看起来像计算机的头部),并且用户看不到此监视器,因此不建议在服务器上使用它。

使用选项“ --headless”,Chrome无需呈现和显示页面,因此它也可以更快地运行。即使在本地计算机上,此选项也可能有用。