単純な必要性:特定のHTML要素のすべてのinnerhtmlが一意になるようにHTMLソースを変更する方法。簡単な例では、より明確に同じことを説明できる:Selenium Locatorを一意にする方法またはInner HTMLをユニークにする方法
<html>
<a href="/hello/doit.do"><img src="Button.bmp" border="0"></a>
<a href="/hello/doit.do">A Real Link</a>
</html>
あなたが気付いた場合、ユーザーがテキストリンクと画像リンクとして表示されます。このような要素を属性を使用して検索する場合は、次のようなCSSロケータを作成してください。
loc = 'css=a[href="/hello/doit.do"]'
セレンには2つの要素があります。 Python 2.7でSelenium RC Clientを使用して、乱数をID属性として追加して分割するだけです。私の質問は、どのようにすべての一般的なinnerHTMLをループして乱数を追加するのですか?
私の知る限りでは、
get_css_count(loc)
は私が必要とする何数= 2を取得するユニークな属性を挿入するためのもののそれぞれの内側のHTMLのですか?
短いストーリー、セレニウムはget_attribute(attributeLocator)
です。set_attribute(attributeLocator, value)
があるかどうか知りたいですか?
JSを実行してhtmlを変更できます。 xpathを使用しますか – malletjo
「some JS」についてもっと具体的に教えてください。なぜCSSを使用できないのですか? – abarik
CSSの代わりにxpathセレクタを使用します。 http://stackoverflow.com/questions/8764856/selenium-css-locator-all-attribute-options-with-and-without-being-strict/8772313#8772313 –