我正在使用Selenium进行一些网络抓取,现在我想找到用户可以单击并在链接文本,按钮文本,element
id
,元素中包含“下载”字样(大写)的所有元素。元素class
或href
。这可以包括链接,按钮或任何其他元素。
在这个答案中,我找到了一个xpath,供某人在某个xpath中基于特定文本(或不区分大小写和部分匹配)搜索按钮来搜索:
text = 'download'
driver.find_elements_by_xpath("(//*[contains(text(), 'download')]")
但是即使该页面上有以下链接,在此页面上也不会返回任何结果:
<a id="downloadTop" class="navlink" href="javascript:__doPostBack('downloadTop','')">Download</a>
有人知道如何在网站中找到包含“下载”一词的所有元素吗?
[编辑]该问题被标记为某个问题的重复项,该问题得到答案,建议将其更改为"//*[text()[contains(.,'download')]]"
。所以我尝试了以下方法:
>>> from selenium import webdriver
>>> d = webdriver.Firefox()
>>> link = 'https://www.yourticketprovider.nl/LiveContent/tickets.aspx?x=492449&y=8687&px=92AD8EAA22C9223FBCA3102EE0AE2899510C03E398A8A08A222AFDACEBFF8BA95D656F01FB04A1437669EC46E93AB5776A33951830BBA97DD94DB1729BF42D76&rand=a17cafc7-26fe-42d9-a61a-894b43a28046&utm_source=PurchaseSuccess&utm_medium=Email&utm_campaign=SystemMails'
>>> d.get(link)
>>> d.find_elements_by_xpath("//*[text()[contains(.,'download')]]")
[] # As you can see it still doesn't get any results..
>>>
有人知道我如何获得用户可以单击的所有元素,并且该链接元素id
,按钮文本,元素,元素class
或中包含“下载”一词href
吗?欢迎所有提示!
试试这个 :
//*[(@id|@class|@href|text())
[contains(translate(.,'DOWNLOAD','download'), 'download')]]
此Xpath 1.0表达式选择 :具有id
或class
或href
属性或text-
node子元素的所有元素,其字符串值以大写形式包含字符串“ download:”。
这是一个运行证明 。下面的XSLT转换用于评估XPath表达式并将所有选定的节点复制到输出:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output omit-xml-declaration="yes" indent="yes"/>
<xsl:template match="/">
<xsl:copy-of select=
"//*[(@id|@class|@href|text())
[contains(translate(.,'DOWNLOAD','download'), 'download')]]
"/>
</xsl:template>
</xsl:stylesheet>
当我们将转换应用于以下测试文档时 :
<html>
<a id="downloadTop" class="navlink"
href="javascript:__doPostBack('downloadTop','')">Download</a>
<b id="y" class="x_downLoad"/>
<p>Nothing to do_wnLoad</p>
<a class="m" href="www.DownLoad.com">Get it!</a>
<b>dOwnlOad</b>
</html>
选择所需的元素,然后将其复制到输出 :
<a id="downloadTop" class="navlink" href="javascript:__doPostBack('downloadTop','')">Download</a>
<b id="y" class="x_downLoad"/>
<a class="m" href="www.DownLoad.com">Get it!</a>
<b>dOwnlOad</b>
我正在使用Selenium进行一些Webscraphing操作,现在我想在链接文本、按钮文本、元素、元素或中找到用户可以单击的所有元素,这些元素包含单词“download”(任何大写)。这可以包括链接、按钮或任何其他元素。 在这个答案中,我找到了一个xpath供那些寻找xpath的人搜索基于特定文本(或不区分大小写和部分匹配)的按钮: 但在此页面上,即使有以下链接,也不会返回任何结果: 有没有人知
我正在运行一个代码,该代码在文件夹中导航,最后到达目标并通过单击文件下载文件。 例如,要查找我正在使用的文件夹,请执行以下操作: 问题是文件夹有时写得不完全一样。例如,它有两个空格。 所以我的问题是:是否有可能通过包含特定单词的文本找到元素?例如这样的事情(我知道这是不对的,我只是想让你理解我): 我寻找答案,但没有找到我要找的。如果这是重复的,我道歉,并要求指出正确的方向。 提前谢谢! 编辑:使
我必须在数据库中找到所有有模式的记录。如果字段中的任何单词以特定字符串结尾。比如“is”: 所以像%is%或%is这样的简单操作是无效的。有没有什么正则表达式可以帮我做这件事?我也可以在PHP中使用LIKE%is%和filtring获得所有记录,但仍然没有任何线索如何。我有结束字符串的解决方案,但没有单词。
我试图通过它包含的文本找到一个元素,然后检查该元素是否也有指向某个特定位置的链接。我正在使用Selenium/Java。 我试图通过文本找到元素,如果我可以的话,以最大限度地减少更新UI时需要做的更改(减少测试维护成本)。 我尝试了以下操作,但assert失败了,因为getAttribute最终为空。 要查找/使用的元素的HTML: 我对硒还是一个新手,所以任何帮助都非常感谢。
我有一个包含50000个单词的单词列表,还有一个逐行查找字母字符的txt文件。我试图通过按顺序阅读单词列表中的单词来找到包含7个不同字母的单词,我为此编写了一个方法。 首先,我浏览单词并同步字符列表,然后通过导航字母txt文件在单词中相互检查,如果有,则增加计数器。通过这种方式,我试图了解单词中有多少不同的字母,最后,如果它提供了控制,我会将其添加到列表中。 读取txt文件并返回哈希集。 但它不是
问题内容: 我想找到在其标签集中包含 所有 给定标签的项目。 以下是简化的类: 如果我这样尝试 我得到包含 任何 给定标签的项目。这不足为奇,但我希望包含 所有 给定标签的项目。所以我尝试另一种方式: 我收到错误消息。如果仅包含一个标签,它将起作用,但失败的原因不止于此。 如何在JPQL中表达呢? 问题答案: 诀窍是使用计数: