gpt4 book ai didi

javascript - 网站加载 javascript 后如何解析网站?

转载 作者:行者123 更新时间:2023-12-01 00:57:00 25 4
gpt4 key购买 nike

我想在加载 JavaScript 后显示网页 HTML,以便我可以获得表格的准确表示。

我尝试过使用其他 jar,但这个似乎是唯一对我有用的 jar,因为其余的看起来已经过时了。

System.setProperty("webdriver.chrome.driver", "D:\\Download bestanden\\chromedriver_win32\\chromedriver.exe");

ChromeOptions options = new ChromeOptions();
//options.addArguments("headless");
WebDriver driver = new ChromeDriver(options);

driver.get("https://www.flashscore.com/");
System.out.println(driver.getTitle());

Document doc = Jsoup.parse(driver.getPageSource());
System.out.println(doc.select("ul.submenu.hidden li a").text());
driver.close();
driver.quit();
System.out.println("Completed");

如果我搜索 lmenu_17,我预计会比作为 href 的 Superlinga by Albania 更多结果,我预计阿尔巴尼亚甲级联赛和 super 杯会像在检查器中一样显示。预先感谢您的任何帮助!

最佳答案

        ChromeDriver driver = new ChromeDriver();
driver.Navigate().GoToUrl("https://www.flashscore.com/");

//works after the page is fully loaded.
//goes to a bottom line.

string href = driver.FindElementByXPath("//*[@id='lmenu_17']/ul/li[1]/a").GetAttribute("href"); // albanian link
//driver.Navigate().GoToUrl(href);

foreach (var element in driver.FindElements(By.XPath("//*[@id='lc']/div[6]/ul/li/a")))
{
Console.WriteLine(element.GetAttribute("href"));
}

driver.FindElementByXPath("//*[@id='lc']/div[6]/ul/li[12]/a").Click();
Thread.Sleep(1000);

foreach (var element in driver.FindElements(By.XPath("//*[@id='lc']/div[9]/ul/li/a")))
{
Console.WriteLine(element.GetAttribute("href"));
}

Console.ReadKey();

您不需要获取页面源代码。

picture of working我不知道是否有帮助。如果我能提供帮助,我会很高兴。

关于javascript - 网站加载 javascript 后如何解析网站?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56485166/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com