2017-05-02 4 views
0

絶対パスを使用して検索バーに入力します。 IDとクラスは動的に生成され、名前変数やインスタンスはありません。だから私は名前付き変数なしでボックスに記入するツールなしで立ち往生しているように感じる。Splinter browser.fillを名前としてクエリーとして使用することはできますか?

方法はありますか?どうにか絶対xpathを名前の割り当てのように変更してから、絶対 'xpath'を割り当てた新しい 'type'に基づいてクエリと塗りつぶしを行うことはできますか?

Splinterで利用できない場合、これはSeleniumにはメソッドがありますか?

私はCSSによって選択しましたし、私はこのエラーが発見だ「selenium.common.exceptions.InvalidElementStateException:メッセージ:Elementは現在相互作用ではなく、操作することはできません」

編集:

<div class="type-ahead-input-container" role="search"> 
<div class="type-ahead-input-wrapper"> 
<div class="type-ahead-input"> 
<label class="visually-hidden" for="a11y-ember10393"> 
Search 
</label> 
<!----> 
<input id="a11y-ember10393" class="ember-text-field ember-view" aria- 
autocomplete="list" autocomplete="off" spellcheck="false" 
placeholder="Search" autocorrect="off" autocapitalize="off" role="combobox" 
aria-expanded="true" aria-owns="ember11064" data-artdeco-is-focused="true"/> 
<div class="type-ahead-input-icons"> 
<!----> 
</div> 
</div> 
<!----> 
</div> 
</div> 
+0

HTMLコードのスニペットを投稿してください。動的に割り当てられるので、HTMLコードの同じセクションの別のスニペットを投稿してください。ときどきIDが動的かもしれない間に、それは部分的にのみ動的かもしれないし、他のキーがあるかもしれない。 –

+0

私はそれを加えました。視覚的に隠された「ラベル」を追加することで、コードの操作を許可しているのかどうか疑問に思っていました。 –

答えて

0

Is there a method for this in Seleniumに質問したとおり、回答は「はい」です。

セレンはSikuliをサポートします。 Sikuliはあなたが画面上で見るものを自動化します。画像認識を使用してGUIコンポーネントを識別して制御します。これは、GUIの内部コードまたはソースコードに簡単にアクセスできない場合に便利です。

詳細については、Sikuli hereをご覧ください。

これがあなたの質問に答えるかどうか教えてください。

関連する問題