通过局部href查找元素(Python Selenium)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了通过局部href查找元素(Python Selenium),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1371字,纯文字阅读大概需要2分钟。
内容图文
![通过局部href查找元素(Python Selenium)](/upload/InfoBanner/zyjiaocheng/686/e51929db1a2b4bc1b9008ac5b9795796.jpg)
我正在尝试从具有不同xpath但在Web数据库的多个页面上具有非常可预测的href方案的元素访问文本.这里有些例子:
<a href="/mathscinet/search/mscdoc.html?code=65J22,(35R30,47A52,65J20,65R30,90C30)">
65J22 (35R30 47A52 65J20 65R30 90C30) </a>
在此示例中,我要提取“ 65J22(35R30 47A52 65J20 65R30 90C30)”
<a href="/mathscinet/search/mscdoc.html?code=05C80,(05C15)">
05C80 (05C15) </a>
在此示例中,我想提取“ 05C80(05C15)”.由于我所需的元素的xpath在页面之间变化,因此我的Web爬虫无法直接通过xpath进行搜索,因此我正在寻找一种更round回的方法.
我的主要想法是利用每个href都包含“ /mathscinet/search/mscdoc.html?code=“的事实. Selenium无法直接搜索href,但是我正在考虑做与此C# implementation类似的事情:
Driver.Instance.FindElement(By.XPath("//a[contains(@href, 'long')]"))
要将其移植到python,我能想到的唯一类似方法是使用in operator,但是我不确定当所有内容都嵌套在find_element_by_xpath中时该语法如何工作.我如何将所有这些想法融合在一起以获得所需的文本?
driver.find_element_by_xpath("//a['/mathscinet/search/mscdoc.html?code=' in @href]").text
解决方法:
如果我理解正确,您想找到所有具有相同部分href的元素.您可以使用此:
elements = driver.find_elements_by_xpath("//a[contains(@href, '/mathscinet/search/mscdoc.html')]")
for element in elements:
print(element.text)
或者如果您要查找一个元素:
driver.find_element_by_xpath("//a[contains(@href, '/mathscinet/search/mscdoc.html')]").text
这将给出所有定位元素的列表.
内容总结
以上是互联网集市为您收集整理的通过局部href查找元素(Python Selenium)全部内容,希望文章能够帮你解决通过局部href查找元素(Python Selenium)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。