繁体   English   中英

没有ID时,如何在Selenium中单击此图像链接?

[英]How would I click this image link in Selenium when there is no id?

我试图单击以转到href所引用的位置。 我不确定用什么代码完成此操作,因为没有明显的ID。 请记住,href引用的链接可以随时更改。

<ul style="display: block; max-height: 230px; width: 129px; margin: auto; transition: all 500ms ease-in-out 0s;" id="pubCarousel" class="elastislide-list"><li style="width: 100%; max-width: 129px; max-height: 230px;">
                <a href="/MTR/FBSC/en/36548659-040e-4185-9ad7-c9472d8fc36e/Page?storeId=bfd80755-bbfa-49b4-92ac-2f62ee2d1f83&amp;postalCode=P3E3Z9">
                    <img src="http://mtr.ca.flyerservices.com/cached_images/pages/FBSC_45e00411-b791-44f7-8310-a77dc39d4fbd_111_53284_FB_E_01_B1_V1_E18.p1.jpg" alt="" border="0">
                    <p class="caption">
                        <span class="title">Version 1</span>
                        <br>
                        <span>July 16, 2015 to July 22, 2015</span>
                    </p>
                </a>
            </li></ul>

正如skandigraun在评论中所说,还有其他方法可以使用Selenium查找元素。 我经常不得不使用CSS选择器以及xpath选择器。

为了找到选择器所需的CSS或xpath,我通常使用chrome开发人员工具或萤火虫右键单击->“检查元素”,然后右键单击所需的元素->“复制CSS路径”或“复制XPath”

driver.findElement(By.cssSelector("#pubCarousel li a img")).click();

或用于XPath

driver.findElement(By.xpath("//*[@id=\"pubCarousel\"]/li/a/img")).click();

不幸的是,我无法使用计算机,所以现在无法对其进行测试。 XPath应该适合您,但是我不确定CSS是否会稍作调整。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM