gpt4 book ai didi

android - Ruby Selenium 无法从安卓图片库中选择图片

转载 作者:行者123 更新时间:2023-11-30 02:52:25 26 4
gpt4 key购买 nike

我正在尝试从 Android 图像条样 GridView 中选择图像。此 GridView 的每个图像都有 ImageView。每个 ImageView 都有 id。

所以当我试图通过 //ImageView[@id="someId"][1] 或通过 //GridView[@id="someId"]//ImageView[@id="someId"][1],它没有找到它。

如何使用 ruby 中的 Selenium webdriver 从图库中选择图像。

编辑:

<GridView id = "someId">
<LinearView>
<ImageView id = "someImageId"></ImageView>
</LinearView>
<LinearView>
<ImageView id = "someImageId"></ImageView>
</LinearView>
<LinearView>
<ImageView id = "someImageId"></ImageView>
</LinearView>
<LinearView>
<ImageView id = "someImageId"></ImageView>
</LinearView>
</GridView>

编辑由于 Uiautomator 无法选择图库中的缩略图,我尝试使用相对坐标选择图像,但这会出错。

有人做过吗?我需要从安卓图库中选择图片。

最佳答案

如果你想要第一张图片(ImageView):

//*[@id='someId']/LinearView[1]/ImageView

输出:

<ImageView id="someImageId"/>

您可以更改 LienarView 数组选择中的索引。

element = driver.find_element(:xpath, "//*[@id='someId']/LinearView[1]/ImageView")
p element
# <Selenium::WebDriver::Element:0x3eb6a9d8 id="{ea847fbe-7fc7-453b-97ea-74fbf325ddac}">

编辑:您还可以使用 find_elements() 将所有元素提取到一个数组中,然后选择您想要的元素:

elements = driver.find_elements(:xpath, '//ImageView')
p elements[1]
# <Selenium::WebDriver::Element:0x..f9bdc4412 id="{1f41fbd9-0a73-4fb2-9c98-44bb877e2388}">

关于android - Ruby Selenium 无法从安卓图片库中选择图片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23909548/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com