2017-02-09 17 views
2

私はちょうどSelenium WebDriverを学び始めています。私はこのチェックボックスを見つけてクリックしたいと思います。それは隠されているので私はまっすぐにそれを得ることができません。すべてのチェックボックスを取得し、必要なフィールドを取得したらどうしますか?Selenium WebDriverの要素を検索

私のコード

enter image description here

HTML

enter image description here

+0

コードと 'HTML'を画像ではなくテキストとして共有します。 – Andersson

+0

'bodies' idが' div'に設定されている場合は例外ログも追加します。その中のURLを選択したかったのですか? –

+0

いいえ、私はすべてのチェックボックスを取得したいと思います。私は 'class =" unstyle box-list-three-colums "を使用しなければならないと思います。 – AlexCOM

答えて

1

次のように要素が質問に添付された画像には下線で強調表示を見つけるために、XPATHを使用してみてください:

By.Xpath("//label[@for='bodystyle-5']") 

注:By.nameは、HTMLタグのname属性にのみ使用できます。


のWeb要素に対応するHTMLを見つけるために、

  1. 右検索したい要素をクリック - > [ChromeでInspectオプション(FirefoxでInspect Element)を選択します。あなたは、XPathやCSSを評価する場合

  2. 、手順に従ってください。

    1. オープンFirefoxブラウザ
    2. 上で右クリックし
    3. アプリケーション訪問のFirefox
    4. Firebug & Firepathのプラグインをインストールします。識別したい要素を選択し、Inspect Element with Firebugオプションをクリックすると、要素のHTMLコードが表示されます。

あなたはFirepathタブでXpathまたはCSS selectorsを試すことができます。

+0

ありがとう!それは働いている。あなたはフィールドのすべてを取得するために 'for'を使うべきなのですか? – AlexCOM

+0

HTMLコードに 'for'属性が含まれているため、' @ for = 'bodystyle-5''を使用しました。一般的な構文は '// tag [@ attributeName = attributeValue]'です。だから、 'name、value、id、classなど'のようなHTMLの属性を使うことができます。 –

+0

しかし、どうすればxPathを使わないのですか? – AlexCOM