我正在尝试编写一个python代码来验证Dropbox中是否存在.mp3
和相应的.json
文件。
dropboxmp3txt = self.driver.find_element_by_xpath('//android.widget.ListView/android.view.View/android.widget.TextView[contains(@index, "1")]')
print dropboxmp3txt.text
这给了我输出:
abc2016-05-05, 10.38.26.mp3
哪个非常好!!!
我需要类似的xpath来查找.json
文本。图中.mp3
以下的那个。
我尝试过:
dropboxmp3txt = self.driver.find_element_by_xpath('//android.widget.ListView/android.view.View[0]/android.widget.TextView[contains(@index, "1")]')
print dropboxmp3txt.text
dropboxjsontxt = self.driver.find_element_by_xpath('//android.widget.ListView/android.view.View[1]/android.widget.TextView[contains(@index, "1")]')
print dropboxjsontxt.text
但是,这给了我一个错误:
Traceback (most recent call last):
File "dropboxshare.py", line 136, in test_1_view_checkbox
dropboxtxt = self.driver.find_element_by_xpath('//android.widget.ListView/android.view.View[0]/android.widget.TextView[contains(@index, "1")]')
File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/remote/webdriver.py", line 258, in find_element_by_xpath
return self.find_element(by=By.XPATH, value=xpath)
File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/remote/webdriver.py", line 712, in find_element
{'using': by, 'value': value})['value']
File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/remote/webdriver.py", line 201, in execute
self.error_handler.check_response(response)
File "/usr/local/lib/python2.7/dist-packages/appium/webdriver/errorhandler.py", line 29, in check_response
raise wde
NoSuchElementException: Message: An element could not be located on the page using the given search parameters.
没有为2个文本指定ID。只有两者中唯一的东西是扩展名(.mp3和.json)..
如何检索这2个文本?
文本
abc2016-05-5,10.38.26.mp3
和
abc2016-05-5,10.38.26.json
我不能直接进入..
喜欢:
xpath("//android.widget.ListView/android.view.View/android.widget.TextView[@index='1' and @text='abc2016-05-05, 10.38.26.mp3' ]")
xpath("//android.widget.ListView/android.view.View/android.widget.TextView[@index='1' and @text='abc2016-05-05, 10.38.26.json' ]")
因为,其他一些.mp3
和.json
可能会在下一次运行期间出现并占据这些地方。
它在运行时更改。我需要先知道该位置中的文本。
我怎样才能找回它..
任何想法???
答案 0 :(得分:0)
您尝试的xpath可能存在冲突。
试试//android.widget.ImageView/../android.widget.TextView[1]
它将返回两个元素,因此请使用find_elements_by_xpath