如何使用selenium java从开发工具中的任何API捕获响应?

问题描述 投票:0回答:1

我需要使用 selenium 和 java 来从开发工具中的粒子 API 预览中获取数据

我没有得到任何解决方案,但我已经尝试过,但我们没有达到这一点。

public class CapAPIResponse {

    EdgeDriver driver;
        
    @Test
    public void seleniumTest() {
        driver = new EdgeDriver();
        DevTools devTools = driver.getDevTools(); 
        devTools.createSession();
        devTools.send(Network.enable(Optional.empty(), Optional.empty(), Optional.empty()));
        devTools.addListener(Network.requestWillBeSent(), requestConsumer ->{
            Request request = requestConsumer.getRequest();
            System.out.println(request.getUrl());
        });
        
        final RequestId[] requestId = new RequestId[1];
        
        devTools.addListener(Network.responseReceived(), responseConsumer -> {
            Response response = responseConsumer.getResponse();
            requestId[0] = responseConsumer.getRequestId(); 
            if( response.getUrl().contains("ws_api.php?")) {
                System.out.println(response.getStatus() + " "+ response.getUrl());
                Assert.assertEquals(response.getStatus() , 200);
                String responseBody = devTools.send(Network.getResponseBody(requestId[0] )).getBody();
                System.err.println(responseBody);
            }   
            
        });
        driver.get("https://weatherstack.com/");
     
    }
}
selenium-webdriver ui-automation
1个回答
0
投票

您使用的是哪个版本的 Chrome 和驱动程序?

© www.soinside.com 2019 - 2024. All rights reserved.