PythonでSeleniumを使用しています。 <select>
要素の.val()
を取得して、それが期待どおりであることを確認したいと思います。
これは私のコードです:
def test_chart_renders_from_url(self):
url = 'http://localhost:8000/analyse/'
self.browser.get(url)
org = driver.find_element_by_id('org')
# Find the value of org?
これどうやってするの? Seleniumのドキュメントには、要素の選択については豊富にありますが、属性については何もありません。
おそらくget_attribute()
を探しています。例が示されています here 同様に
def test_chart_renders_from_url(self):
url = 'http://localhost:8000/analyse/'
self.browser.get(url)
org = driver.find_element_by_id('org')
# Find the value of org?
val = org.get_attribute("attribute name")
Python
element.get_attribute("attribute name")
Java
element.getAttribute("attribute name")
ルビー
element.attribute("attribute name")
C#
element.GetAttribute("attribute name");
最近開発された Web Applications は JavaScript 、 jQuery 、 AngularJS 、 ReactJS など Selenium を介して要素の属性を取得する可能性があります WebDriverWait WebDriver インスタンスを遅れている Web Client と同期する Web Browser属性の取得を試みる前。
いくつかの例:
Python:
visible要素(例:<h1>
タグ)から属性を取得するには、 expected_conditions as visibility_of_element_located(locator)
次のように:
attribute_value = WebDriverWait(driver, 20).until(EC.visibility_of_element_located((By.ID, "org"))).get_attribute("attribute_name")
interactive要素(たとえば、<input>
タグ)から属性を取得するには、 expected_conditions as element_to_be_clickable(locator)
次のように:
attribute_value = WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.ID, "org"))).get_attribute("attribute_name")
以下は、HTMLでよく使用されるいくつかの属性のリストです
注:各HTML要素のすべての属性の完全なリストは、 HTML属性リファレンス にリストされています。