提问人:José Soares 提问时间:5/24/2023 最后编辑:Greg BurghardtJosé Soares 更新时间:5/25/2023 访问量:120
在特定网络响应字符串上停止 C# 中的 selenium 4
Stopping selenium 4 in C# on specific network response string
问:
我正在 c# 上试验 selenium 4,我遇到了一些麻烦,我有一个程序目前加载多个页面,每 10 秒加载一个页面,这些页面具有简单的“?page=i”模式并抓取它们的网络活动。我通过一个简单的“for i”循环来实现这一点,但我希望它无限运行,直到发出具有非常特定字符串的网络请求。这可能吗?
一些上下文代码:
var opt = new ChromeOptions();
opt.AddArgument("--headless");
opt.AddArgument("--log-level=3");
var driver = new ChromeDriver(opt);
driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(5);
var devTools = (IDevTools)driver;
IDevToolsSession session = devTools.GetDevToolsSession();
var domains = session.GetVersionSpecificDomains<V113.DevToolsSessionDomains>();
var tcs = new TaskCompletionSource<List<string>>();
domains.Network.ResponseReceived += ResponseReceivedHandler;
await domains.Network.Enable(new V113.Network.EnableCommandSettings());
for(int i = 1; i < 40; i++)
{
Console.WriteLine($"Page {i}");
driver.Navigate().GoToUrl($"url/?page={i}");
System.Threading.Thread.Sleep(10000);
}
driver.Quit();
Console.WriteLine("Chromium quit.");
答: 暂无答案
评论