首页 > 解决方案 > 在谷歌云上运行 nohup 后 Chromedriver 关闭

问题描述

我有一个使用seleniumchromedriver 的简单脚本。我已经安装了铬。当我使用命令运行脚本时,nohup python3.7 -u main.py & tail -f nohup.out一切正常;脚本可以正常工作。当我关闭google cloud ssh脚本窗口时停止工作。当我重新打开ssh并打电话时,tail -f nohup.out我收到这样的错误

selenium.common.exceptions.WebDriverException: Message: chrome not reachable
  (Session info: headless chrome=75.0.3770.142)

我使用的是 chrome 版本87,并且读到降级它应该会有所帮助,所以我将它降级为75. 在ubuntu上运行,chrome和chromedriver版本都是75。有没有这样的命令会在关闭ssh窗口后让chromedriver不关闭?

标签: linuxseleniumgoogle-cloud-platformselenium-chromedrivercloud

解决方案


您可以在 Linux 的后台启动进程。即使您注销它们也会继续运行(本质上是关闭 SSH 窗口)。

有几种方法:

  1. 使用bg& disown- 如此处所述
  2. 如此处screen所述使用

您可以浏览整个线程以获得更多想法。我建议使用bg& disown- 它在 GCP 提供的 Ubuntu 上运行良好,但是您可以尝试各种解决方案并选择最适合您需求的解决方案。

根据我的经验 - 我screen用于很多事情 - 包括 virtualbox 并且它有效 - 如果您希望许多进程在后台运行,它可能会更麻烦,但如果这只是其中一个非常容易。

安装屏幕:sudo apt install screen,运行它screen并将其视为另一个屏幕,运行您想要的任何内容,然后只需按一下ctrl + a d,您将回到“原始”外壳。如果你想恢复你的屏幕会话类型screen -r您将在此处找到更多关于使用screen的信息。


推荐阅读