Python 3.x Selenium webdriver.Remote在Linux上获取SSL错误,在macOS上工作

Python 3.x Selenium webdriver.Remote在Linux上获取SSL错误,在macOS上工作,python-3.x,selenium,ssl,selenium-webdriver,Python 3.x,Selenium,Ssl,Selenium Webdriver,我正试图使用Selenium(我尝试使用Beautiful Soup,但他们的身份验证系统太难理解,所以我放弃使用Selenium)来抓取第三方网站 我使用的python脚本使用了最新的Selenium 3.12.0驱动程序和Selenium-server-standalone-3.12.0.jar。我的Linux和macOS机器都运行JDK1.8.0_172 如果我在Linux或macOS上运行脚本,并在macOS上使用selenium服务器,那么效果会很好。如果使用Linux上的seleni

我正试图使用Selenium(我尝试使用Beautiful Soup,但他们的身份验证系统太难理解,所以我放弃使用Selenium)来抓取第三方网站

我使用的python脚本使用了最新的Selenium 3.12.0驱动程序和
Selenium-server-standalone-3.12.0.jar
。我的Linux和macOS机器都运行JDK1.8.0_172

如果我在Linux或macOS上运行脚本,并在macOS上使用selenium服务器,那么效果会很好。如果使用Linux上的selenium服务器在Linux或macOS上运行脚本,它将无法加载jQuery,并出现以下错误:

18:28:02.453 ERROR [DefaultJavaScriptErrorListener.loadScriptError] - Error loading JavaScript from [https://ww6.fltplan.com/js/jquery-1.12.3.min.js].
javax.net.ssl.SSLHandshakeException: Remote host closed connection during handshake
   at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1002)
   at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1385)
我正在抓拍的这个网站写得非常原始(看起来像是地理城市之外的东西),所以很可能它在做一些荒谬的事情。哦,这段代码几周前还在运行,我“冻结”了它,但后来它在Linux中停止了工作,我不得不再次开始修补它

这是我的连接代码:

capabilities = {
        'browserName': 'htmlunit',
        'version': 'firefox',
        'platform': 'ANY',
        'javascriptEnabled': True,
        'acceptInsecureCerts': True,
}
driver = webdriver.Remote(
    # "http://192.168.1.46:4444/wd/hub", webdriver.DesiredCapabilities.HTMLUNITWITHJS
    # "http://localhost:4444/wd/hub", webdriver.DesiredCapabilities.HTMLUNITWITHJS
    "http://localhost:4444/wd/hub", capabilities
)

driver.get("https://www.fltplan.com/")

第一个注释掉的远程url是运行在我的macOS机器上的Selenium,它可以工作。第二次和第三次尝试是使它在Linux上工作,但迄今为止没有成功。第二个问题是几周前才解决的问题。

我想我有一个解决方案。我在
java_home/jre/lib/security
中复制了java.security文件,并注释掉了文件中的所有“disabledAlgorithms”行。我用
nohup java-Djava.security.properties==java.security.copy-jar selenium-server-standalone-3.12.0.jar启动selenium服务器,它现在似乎可以工作了

我很想听听为什么会这样的解释。我假设这意味着他们试图下载jquery的站点使用了JDK1.8禁用的加密,因为它被认为太弱了