2017-10-20 11 views
0

RSeleniumとxpathsの新機能ですが、このトピックについていくつかの質問がありましたが、私にはうまくいかないようです。最初のウィジェットのCSVファイルを「時間の経過とともに」というページにダウンロードしようとしています。このオプションには一意のID /クラスなどはありませんが、クラス "widget-actions-item-text"には "CSV"が含まれている "widget-actions-item"クラスの3番目のクラスです。xpath(RSelenium)を使用したネストされたdivの検索

library(RSelenium) 
library(wdman) 
driver <- rsDriver(browser = "firefox") 
remDr <- driver[["client"]] 
remDr$open 
remDr$navigate("http://trends.google.com/trends/explore?cat=3") 
webElem1 <- remDr$findElement("class name", "widget-actions-menu") 
webElem1$clickElement() 

上記のコードは、オープンWebページ、もう1つはCSVである3つのダウンロードオプション、との最初のウィジェットメニューを反転させます。

webElem2 <- remDr$findElement("xpath", paste0("//div[@class='widget-actions-content']//[@class='widget-actions-item'][3]")) 
webElem2$clickElement() 

ドライバはこの要素を見つけることができません。

<div class="widget-actions-content" ng-show="widgetActions.menuOpen" aria-hidden="false" style=""> 
    <!----><button class="widget-actions-item" ng-if="showActionButton()" ng-click="embed()" title="Embed" track="['Widget', type, 'Embed']" ve-tracking="" jslog="39389; track:generic_click"> 
    <span class="widget-actions-item-icon embed-image flip-rtl"></span> 
    <div class="widget-actions-item-text"> 
     Embed 
    </div> 
    </button><!----> 
    <!----><button class="widget-actions-item" ng-if="isEditor || share" ng-click="share()" title="Share" track="['Widget', type, 'Share']" ve-tracking="" jslog="39390; track:generic_click"> 
    <span class="widget-actions-item-icon share-image flip-rtl"></span> 
    <div class="widget-actions-item-text"> 
     Share 
    </div> 
    </button><!----> 
    <!----><button class="widget-actions-item" ng-if="isEditor || (export &amp;&amp; showActionButton())" ng-click="export()" title="CSV" track="['Widget', type, 'Export']" ve-tracking="" jslog="39388; track:generic_click"> 
    <span class="widget-actions-item-icon csv-image flip-rtl"></span> 
    <div class="widget-actions-item-text"> 
     CSV 
    </div> 
    </button><!----> 
    <help-dialog ng-show="!$root.globals.isDesktopMode &amp;&amp; helpDialog" class="widget-actions-item ng-hide" show-annotation="true" data="helpDialog" aria-hidden="true"><button class="help-icon-button" ng-click="openDialog()" title="Help"> 
    <i class="material-icons-extended help-icon-color">help_outline</i> 
    <div class="widget-actions-item-text" ng-show="showAnnotation" aria-hidden="false"> 
    Help 
    </div> 
</button> 
</help-dialog> 
</div> 
+0

ショーhtmlとあなたは私のポスト –

+0

@VitaliyMoskalyukを=選択したい)を – snoepdogg

+0

更新の答えを編集した –

答えて

0

これらのいずれかが動作します:

//button[contains(.,'CSV')] 

//button[div[@class='widget-actions-item-text'][contains(text(),'CSV')]] 

//button[div[@class='widget-actions-item-text' and contains(text(),'CSV')]] 

//button[@title='CSV'] 
関連する問題