Source code:
package Labarary;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
public class LAb {
public static void main(String[] args) {
System.out.println("chrome");
System.setProperty("webdriver.chrome.driver","C:\\Users\\Manjit\\Downloads\\chromedriver_win32\\chromedriver.exe");
// TODO Auto-generated method stub
WebDriver driver=new ChromeDriver();
}
}
无效端口。退出…??,退出???????
org.openqa.selenium.os.OsProcesscheck ForError SEVERE:org.apache.commons.exec.ExecteExc0019:进程退出时出错: 1(退出值: 1)异常线程"main"org.openqa.selenium.WebDriverExc0019:超时等待驱动服务器启动。构建信息:版本:'3.12.0',版本:'7c6e0b3',时间:'2018-05-08T15:15:03.216Z'系统信息:主机:'MANJIT-PC',IP:'192.168.1.19',os.name:'Windows 7',os.arch:'amd64',os.version:'6.1',java.version:'1.8。0_171'驱动程序信息:driver.version:org.openqa.selenium.remote.service.驱动程序的ChromeDriverervice.waitorg.openqa.selenium.remote.service.驱动程序<-PLHD-13/>(DriverService.java:178)在org.openqa.selenium.remote.service.Driver命令xecutor.execute(Driver命令xecutor.java:79)在org.openqa.selenium.remote.远程WebDriver.execute(远程WebDriver. java: 543)在org. openqa. selenium. Remote。在org. openqa. selenium. Remote上启动会话(远程WebDriver. java: 207)。远程网络驱动)java: 130)在org. openqa. selenium. chrome。ChromeDriver.(java: 181)在org. openqa. selenium. chrome。ChromeDriver.(java: 168)在org. openqa. selenium. chrome。ChromeDriver.(ChromeDriver. java: 123)在Labarary。LAB. main(LAB. java: 20)引起:org. openqa. selenium. net.超文本传输协议超时等待/status]之后可用?????MS at org. openqa. selenium. net.UrlChecker. waitUntil可用(UrlChecker. java: 100)在org. openqa. selenium. Remote. service。9更多原因:java. utile. con当前。在java. util. con当前的异常。FutureTasks. get(未知来源)在com. google.通用。在org. openqa. selenium. net.UrlChecker. waitUntil可用(UrlChecker. java: 75)...10更多
此错误消息。。。
Invalid port. Exiting... ??? ??, ???? ??:??:?? ???????
org.openqa.selenium.os.OsProcess checkForError
...表示OsProcess无法将ChromeDriver服务器进程绑定到系统中分配的空闲端口。
根据讨论,获取无效端口错误和无效端口。退出。。。
"端口无效。退出..."当分配给chromeDrive的端口小于0或大于65535时发生。
执行以下步骤解决核心问题:
netstat
命令,查看是否已达到可能打开的连接的限制,或者检查ChromeDriver使用的端口上是否有其他应用程序正在运行
@Test
驱动程序。quit()
在tearDown(){}
方法中关闭作为替代方案,您可以强制WebDriver变体,即ChromeDriver在特定端口上启动,例如65535
,如下所示:
>
代码块:
System.setProperty("webdriver.chrome.driver","C:\\WebDrivers\\chromedriver.exe");
WebDriver driver= new ChromeDriver(new ChromeDriverService.Builder().usingPort(65535).build());
driver.get("https://www.google.com/");
控制台输出:
Starting ChromeDriver 83.0.4103.39 (ccbf011cb2d2b19b506d844400483861342c20cd-refs/branch-heads/4103@{#416}) on port 65535
Only local connections are allowed.
Please see https://chromedriver.chromium.org/security-considerations for suggestions on keeping ChromeDriver safe.
ChromeDriver was started successfully.
Jul 20, 2020 7:36:17 PM org.openqa.selenium.remote.ProtocolHandshake createSession
INFO: Detected dialect: W3C
您可以在以下内容中找到一些相关的详细讨论:
我使用硒服务器独立罐-3.11.0,最新的ChromeDriver-2.36和Chrome版本66.0.3359.139 我的代码 但我无法启动chrome.its给出以下错误
我们用无头铬运行硒(JAVA)。这一切都需要大约300 MB的RAM。VPS有1 GB内存,但硒“粉碎”: 似乎没有足够的可用 RAM: 结果: 这是为什么?完整的流程列表如下:
我还是想不通。几天前我的硒工作得很好;现在它给我带来了一些错误。我首先使用Nuget,然后我尝试手动安装它。 如何重现问题: 错误: OpenQA. Selenium.WebDriverExcture:抛出一个带有空响应的异常,向远程WebDriver服务器发送HTTP请求以获取URLhttp://localhost:60695/session.异常的状态为ReceiveFailure,消息为:基
我正在编写一个与我们的一个系统交互的硒脚本。在我们的系统中,有一个按钮,当按下时,它只能正确加载页面大约一半的时间(它只是在每隔一个场合加载无限长的时间),因此我不能依赖默认的硒等待页面加载。因此,我想按下按钮,并在打开新窗口之前立即关闭Web浏览器以继续执行脚本。不幸的是,我无法解决按钮本身的问题。 我目前的代码: 目前,System.out不太可能达到,因为一旦action.perform()
我正在尝试使用 启动 的会话 我一直收到这个错误: (未知错误:DevToolsActivePort文件不存在)(从chrome位置/usr/lib/chrumbrowser/chrum浏览器启动的进程不再运行,因此ChromeDriver假设chrome已崩溃。)(驱动程序信息:ChromeDriver=71.0.3578.98,平台=Linux 4.15.0-45-generic x86_64
我使用Selenium和PhantomJS开发了几个Python脚本。当我转向自动下载时,我切换到了(headed)Firefox(有效),然后是Chrome,有了headless选项,这样浏览器就不会在我面前打开了。 我的第一个脚本访问一个页面和几个HTML元素,与无头Chrome完美地工作。 第二个,然而,工作与头铬。如果我加上“无头”选项,它就不再起作用了。当我试图以headless模式打印