2015-07-18 72 views
3

我得到了下面的問題:我用谷歌瀏覽器功能越來越XPath表達式的按鈕如何鍵入XPath表達式(JAVA)

,但我不知道如何在我的Java使用這種表達碼。

我從谷歌瀏覽器下面的表達式:// * [@ ID = 「watch8 - 情緒 - 行爲」]/SPAN/SPAN [3] /按鈕

我要在以下使用此XPath表達式代碼:

WebDriver driver = new HtmlUnitDriver(); 

driver.get(url); 

driver.findElement(By.xpath(" ")); 
+0

這個設計很糟糕,脆的XPath定位器。如果你可以分享網頁的HTML代碼,有人可以幫助你創建一個合適的代碼。 – automatictester

回答

0
WebElement button = driver.findElement(By.xpath("//*[@id='watch8-sentiment-actions']/span/span[3]/button")); 

頭腦中的XPath表達式中的單引號!

沒有,你也可以單擊按鈕,例如:

button.click(); 

了一些研究之後,我現在才知道,這個按鈕是YouTube上的downvote按鈕,所以最好只嘗試這個代碼與您的自己的視頻。

+0

我輸入了這個,但我得到以下錯誤代碼: 線程「主」異常org.w3c.css.sac.CSSException:無效的選擇器:*: - webkit全屏幕祖先 –

+0

抱歉有一些錯字代碼,當然這個按鈕是一個「WebElement」,我們需要在xpath-expression中使用單引號,現在應該可以工作 – drkthng

0

它像好得多:

driver.findElement(By.xpath("//*[@id='watch8-sentiment-actions']/span/span[3]/button")).click(); 
+0

Dominik Q,對你有幫助嗎? – juanmajmjr