2017-03-09 54 views
0

在使用xpath/css選擇面臨的問題,讓我知道解決方案我使用XPath/CSS選擇器

List<WebElement> frm=driver.findElements(By.cssSelector("html body div#gi_midcontent.col-md-12.col-sm-12.col-xs-12.pad0 div#gi_mid_in div#viewContainer div#flights-home-view.homeContainer.col-md-12.col-sm-12.col-xs-12.myPropDisplay div.homeContainerInner div#searchWidgetNew.blueBg.homeWidgetWrap.posRel form#gi_search div#searchWidgetCommon div.formWrap.padT15 div#source_st.fl_shAutosgBox.col-md-5.col-sm-5.col-xs-12.autoSuggestBox.marginB10 input#gi_source_st.form-control.inputTxtLarge.fromTxt.posRel")); 
+1

如果我們不知道問題是什麼,我們該如何幫助您? – Guy

回答

0

夫婦的事情,從網站選擇城市面臨的問題,爲Goibibo網站城市評選硒的webdriver腳本。

  1. 在這裏查看硒文檔。 http://www.seleniumhq.org/docs/03_webdriver.jsp
  2. 請閱讀如何使用不同的定位器策略來識別特定的定位器。
  3. 不要因爲有些東西不能工作而問這個問題,花點時間在這個問題上。
  4. 訪問此頁面瞭解如何提問以便您可以獲得答案。

我之前提到的原因是你的css定位器看起來很可憐​​,你試圖識別的定位器也有名稱和id,如果你現在如何使用定位器,你可以弄清楚。

+0

實際上問題是當我試圖讀取城市在Goibibo網站上使用列表 Val = driver.findelements(By.xpath(「」));對於(WebElement sel:Val){System.out.println(sel.getText());}那麼你能告訴我如何得到所有城市的價值,它將有所幫助。根據你的回答,你很清楚這一點, –

+0

Gaurang Shah可以請您檢查goibibo網站的硒選擇功能 –

0

問題中指定的選擇器混合ID和類。然而,看看網站,建議的城市列表不是作爲一組輸入元素提供的,而是從AJAX中提取的。

在此URL上使用Postman工具發送GET查詢,您可以使用對象列表獲取JSON數據。 json [「data」] [「r」] [index] [「xtr」] [「cn」]的屬性似乎是一串「CityName」。這個API不需要認證,所以它也可以通過Java HttpClient獲取。

https://voyager.goibibo.com/api/v1/flights_search/find_node_by_name_v2/?search_query=hint&limit=10 

抽樣結果:

{ 
    "data": { 
    "r": [ 
     { 
     "s_sc": 5055001, 
     "xtr": { 
      "cn": "Beica", 
      "cid": "1918715907401915921", 
      "cc": "ET", 
      "dis_type": "ldis", 
      "ar": 0, 
      "eid": "7717797727439208389", 
      "cnt_n": "Ethiopia", 
      "cnt_id": "1871100673297067773", 
      "dis": 0 
     }, 
     "iata": "BEI", 
     "n": "Beica Airport", 
     "mt": "Beica Airport ### Beica", 
     "t": "airport", 
     "_id": "7717797727439208389", 
     "ct": { 
      "_id": "1918715907401915921", 
      "n": "Beica" 
     } 
     }, 
     ... 
    ] 
    } 
} 

,請與您的查詢字符串替換爲 「提示」,例如,一個字母開始。另請注意,在一個查詢中(頁面)限制不能大於50。

相關問題