我試圖通過Selenium Firefox webdriver找到YouTube視頻的鏈接。現在,我得到一個NoSuchElementException。它正確訪問YouTube頁面,但無法找到第一個鏈接的那個元素。我的目標是能夠將url複製到第一個視頻到一個字符串。無法在YouTube搜索結果頁面上使用Selenium查找YouTube視頻鏈接
String ytlink = "https://www.youtube.com/results?search_query=" + searchTerm;
driver.get(ytlink);
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
By cssSelector = By.cssSelector("#item-section-209606 > li:nth-child(2) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > h3:nth-child(1) > a:nth-child(1)");
WebElement element = driver.findElement(cssSelector);
我正在使用Intellij並擁有最新版本的硒。 Firefox用於通過使用Inspect元素來定位CSS選擇器 - 複製CSS選擇器。
我想找回在href =「/手錶?ν= WPvGqX-TXP0」,並存儲爲一個字符串
你可以考慮歸納爲您要採取的行動的確切手動步驟執行?謝謝 – DebanjanB
一旦我進入YouTube搜索結果頁面,我正嘗試檢索第一個視頻的鏈接並將其存儲在字符串中。但是,所有youtube視頻都使用https://www.youtube.com/watch?v=9YlEpv-FrWU進行設置,因此我需要的唯一信息是v =後的唯一代碼。 「watch?v = 9YlEpv-FrWU」的整個字符串存儲在搜索結果頁面的HTML中。我會在原始帖子中添加一張圖片。 – Alexander
正如下面提到的smit9234,項目部分編號會更改每個搜索,這是我的錯誤出現的位置。如果挑出第一個視頻並不理想,可能會將搜索結果元素存儲在ArrayList中,然後訪問第一個視頻? – Alexander