gpt4 book ai didi

c# - 使用C#使用Selenium查找视频是否可用

转载 作者:行者123 更新时间:2023-12-03 05:31:02 25 4
gpt4 key购买 nike

如何使用C#使用Selenium来查找视频是否可用?

IWebDriver driver = new ChromeDriver(@"C:\chromedriver_win32");
driver.Navigate().GoToUrl("https://www.youtube.com/watch?v=v19-La3pTmU");

var result = driver.FindElement(By.ClassName("reason style-scope ytd-player-error-message-renderer")).Text;

这是我的代码段,用于查找YouTube视频是否可用。如果不可用,我可以访问“此视频不可用”文本。如下图所示,但我无法使用代码段访问此文本。

enter image description here

最佳答案

提取文字该视频不可用。 ,您可以使用以下任一行代码:

  • XPath:
    var result = driver.FindElement(By.XPath("//div[@class='reason style-scope ytd-player-error-message-renderer']")).GetAttribute("innerHTML");
  • CssSelector:
    var result = driver.FindElement(By.CssSelector("div.reason.style-scope.ytd-player-error-message-renderer")).GetAttribute("innerHTML");

  • 也许您可能需要结合 WebDriverWait来诱导 ExpectedConditions,如下所示:
  • XPath:
    wait = new WebDriverWait(driver, TimeSpan.FromSeconds(20));
    var result = wait.Until(ExpectedConditions.ElementIsVisible(By.XPath("//div[@class='reason style-scope ytd-player-error-message-renderer']"))).GetAttribute("innerHTML");
  • CssSelector:
    wait = new WebDriverWait(driver, TimeSpan.FromSeconds(20));
    var result = wait.Until(ExpectedConditions.ElementIsVisible(By.XPath("div.reason.style-scope.ytd-player-error-message-renderer"))).GetAttribute("innerHTML");
  • 关于c# - 使用C#使用Selenium查找视频是否可用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49479436/

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