selenium - 使用 css 选择器 python 选择一个元素

标签 selenium selenium-grid

我正在尝试使用 python 选择 selenium 中的一个元素,并且需要 css 选择器的一些帮助。 HTML 代码如下:

<div class="grid x5" id="grid">
        <div style="opacity: 1;"><span class="box" style="z-index:92"></span>8</div><div style="opacity: 1;"><span class="box" style="z-index:77"></span>23</div><div style="opacity: 1;"><span class="box" style="z-index:93"></span>7</div><div style="opacity: 1;"><span class="box" style="z-index:99"></span>1</div><div style="opacity: 1;"><span class="box" style="z-index:80"></span>20</div><div style="opacity: 1;"><span class="box" style="z-index:76"></span>24</div><div style="opacity: 1;"><span class="box" style="z-index:83"></span>17</div><div style="opacity: 1;"><span class="box" style="z-index:94"></span>6</div><div style="opacity: 1;"><span class="box" style="z-index:87"></span>13</div><div style="opacity: 1;"><span class="box" style="z-index:95"></span>5</div>
        <div style="opacity: 1;"><span class="box" style="z-index:78"></span>22</div><div style="opacity: 1;"><span class="box" style="z-index:98"></span>2</div><div style="opacity: 1;"><span class="box" style="z-index:82"></span>18</div><div style="opacity: 1;"><span class="box" style="z-index:79"></span>21</div><div style="opacity: 1;"><span class="box" style="z-index:89"></span>11</div><div style="opacity: 1;"><span class="box" style="z-index:91"></span>9</div><div style="opacity: 1;"><span class="box" style="z-index:85"></span>15</div><div style="opacity: 1;"><span class="box" style="z-index:90"></span>10</div><div style="opacity: 1;"><span class="box" style="z-index:81"></span>19</div><div style="opacity: 1;"><span class="box" style="z-index:96"></span>4</div>
        <div style="opacity: 1;"><span class="box" style="z-index:97"></span>3</div><div style="opacity: 1;"><span class="box" style="z-index:75"></span>25</div><div style="opacity: 1;"><span class="box" style="z-index:88"></span>12</div><div style="opacity: 1;"><span class="box" style="z-index:84"></span>16</div><div style="opacity: 1;"><span class="box" style="z-index:86"></span>14</div>
    </div>

我可以看到的一件事是,在 style="z-index:92"--> 中,100 - z-index 是显示的数字。不知道这有什么帮助。

如果我尝试使用 selenium 并使用上面的代码单击数字 1 - 25,我将如何使用上面提供的 HTML 代码来执行此操作?

Added a picture of how it looks

感谢您的帮助!

最佳答案

文本1-25包含在div标签中,您可以尝试:

#xpath
element_list = driver.find_elements_by_xpath("//div[contains(@style,'opacity')]")# to find all div elements with style= "opacity: 1;"

#css selector
#element_list = driver.find_elements_by_css_selector("[style^=opacity]") # to match divs containing style attribute starting with opacity

for items in element_list:
    print (items.text)  #to print out element text
    if (items.text) in range(1, 25):
    # do your click action here

关于selenium - 使用 css 选择器 python 选择一个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52429771/

相关文章:

python - 如何单击::元素之前

selenium - Selenium Webdriver 中找不到元素错误

selenium - Protractor 远程测试多浏览器

java - 在公司代理后面使用 Selenium RemoteWebDriver

selenium-server-standalone.jar maven 依赖项

java - 使用 Selenium WebDriver 在 Eclipse 中调试时如何修复 'Source not found' 错误?

selenium - 如何查找 Selenium 网格上节点使用的 chrome 驱动程序版本

html - 无法在 Selenium 中查看整页源代码

docker - 从另一个Docker实例运行Zalenium测试

Selenium grid 无法运行演示测试