我是新的selenium和python,两天后才开始。我正在抓取网页并尝试查找数量变化的动态图片
我已经使用Chrome开发工具找到了xpath。但是,由于它是动态元素,所以我想出了其中的一部分。
我知道我可以在for标记中使用带有递增变量的for循环,但是随后我想知道是否还有其他方法可以实现.XML中具有endswith函数,但其XML2.0和浏览器支持版本1 < / p>
我正在尝试类似的方法
//*[contains(@id,"submenu1")]/li[i]/a/span
如何构造xpath(/ li [i] / a / span)上方的最后一个元素,以便它可以捕获上面发布的动态数字值?
这是元素的HTML代码
//*[@id="submenu1"]/li[1]/a/span
//*[@id="submenu1"]/li[2]/a/span
//*[@id="submenu1"]/li[3]/a/span
//*[@id="submenu1"]/li[4]/a/span
//*[@id="submenu1"]/li[5]/a/span
//*[@id="submenu1"]/li[6]/a/span
//*[@id="submenu1"]/li[7]/a/span
实际情况应该能够在li标签内更改数字来捕获
答案 0 :(得分:0)
尽管ends-with中没有内置的XPath 1.0功能,但现有的XPath functions and operators允许您实现此示例HTML:
<a href="http://com.example">com.example</a>
<a href="http://example.com">example.com</a>
示例XPath可以找到以com
结尾的链接:
//a[substring(text(), string-length(text()) - string-length('com')+ 1, string-length(text()))= 'com']
演示: