如何在硒python中找到元素

J. 很多

我现在一直在使用 selenium,并且在过去的几个小时里一直被困在这个问题上。这看起来很简单,但我似乎无法找出正确的执行方式。我基本上是在尝试根据用户的输入选择鞋码。以下是我尝试整理的一些按钮以及周围的 HTML。

<p class="checkbox-size">
    <input type="radio" value="500" id="super_attribute[150]_500" name="super_attribute[150]" class="product_attribute">
    <label for="super_attribute[150]_500">
        <span id="label_eu0" class="label_hidden"> 38.5</span>
        <span id="label_us0" class="label_show"> 6</span>
        <span id="label_uk0" class="label_hidden"> 5.5</span>
        <span id="label_cm0" class="label_hidden"> 24</span>
    </label>
</p>

我试图按下的特定按钮是这个:

<label for="super_attribute[150]_137">
    <span id="label_eu10" class="label_hidden"> 45</span>
    <span id="label_us10" class="label_show"> 11</span>
    <span id="label_uk10" class="label_hidden"> 10</span>
    <span id="label_cm10" class="label_hidden"> 29</span>
</label>

现在我尝试了许多不同的搜索方法,然后单击其中一个按钮,但没有任何效果。有什么建议么?这是我目前用于尝试查找并单击按钮的方法:

driver.find_element_by_css_selector("input[type='radio'][value='11']").click()

回想起来,我可能没有为按钮提供正确的代码,所以这里是检查元素的快照以及实际页面,如果您想亲自检查一下。我正在尝试单击大小按钮。按钮检查元素

解决了!这是我最终使用的代码。

sizes = driver.find_elements_by_class_name('checkbox-size')
for size in sizes:
    if size.text in [usersize]:
        size.click()
        print colored('Carted size %s'%(size.text), 'green')
        break
    continue
J. 很多

好的,这就是我最终使用的解决问题的方法。我用这个类制作了一个包含所有网络元素的列表,'checkbox-size'然后遍历该列表以找到正确的大小,然后单击该元素。这是代码:

    sizes = driver.find_elements_by_class_name('checkbox-size')
for size in sizes:
    if size.text in [usersize]:
        size.click()
        print colored('Carted size %s'%(size.text), 'green')
        break
    continue

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章