Я хотел бы перехватывать сетевые запросы с помощью selenium 4 и сохранять их в файл json

Я использую селен для перехвата сетевых запросов, теперь я написал код, который слушает и перехватывает запросы, но я изо всех сил пытаюсь записать все запросы в файл json, это мой код:

public class SeleniumFourFeaturesTest {
    WebDriver driver;
    DevTools tool;

    @BeforeClass
    public void startSession() {
        //Set Chrome Driver
        WebDriverManager.chromedriver().setup();
        driver = new ChromeDriver();

        //Set Dev-Tools and create a session
        tool = ((ChromeDriver)driver).getDevTools();
        tool.createSession();
    }

    @Test(enabled=false)
    public void test1() {
        driver.findElement(By.xpath("//div[@class='list-group']/a[1]")).click();
        driver.findElement(By.id("ap_email")).sendKeys("test123");
        driver.findElement(By.id("ap_password")).sendKeys("12345");

        driver.findElement(RelativeLocator.withTagName("input").below(By.id("ap_password"))).click();
    }

    @Test
    public void interceptRequestAndContinue() throws InterruptedException {

        //enable Network
        tool.send(Network.enable(Optional.empty(), Optional.empty(), Optional.empty()));

        //add listener to intercept request and continue
        tool.addListener(Network.requestIntercepted(),
                requestIntercepted -> tool.send(
                        Network.continueInterceptedRequest(requestIntercepted.getInterceptionId(),
                                Optional.empty(),
                                Optional.empty(),
                                Optional.empty(), Optional.empty(),
                                Optional.empty(),
                                Optional.empty(), Optional.empty())));

        //set request interception only for css requests
        RequestPattern requestPattern = new RequestPattern("*.css", ResourceType.Stylesheet, InterceptionStage.HeadersReceived);
        tool.send(Network.setRequestInterception(ImmutableList.of(requestPattern)));

        driver.get("https://www.google.com");
        Thread.sleep(30000);

    }

}

Хотелось бы в конце кода иметь возможность записывать запросы в json файл

0 ответов

Другие вопросы по тегам