gpt4 book ai didi

python Selenium : Safari returns different text for span than Chrome and Firefox

转载 作者:行者123 更新时间:2023-11-28 20:37:55 25 4
gpt4 key购买 nike

绑定(bind):Python 3 Selenium浏览器:Safari、FireFox、Chrome

在调用 get '.text' 时,我收到了不同的文本,如下所示:
<span class='my-upper' href='some/url'> my link</span>
类的地方:
text-transform: uppercase;

在 Chrome 和 FireFox 上我得到“我的链接”,但在 Safari 11.0 上我得到“我的链接”
注意:小写和前导空格。它看起来像是从 html 返回准确的值,而不是屏幕上显示的值

任何人都对如何解决这个问题有任何想法。

谢谢

最佳答案

Chrome 和 Firefox 注入(inject)相同的 script在页面中构建呈现的文本。看来 Safari 并不依赖这个脚本。

一个选择是获取 innerText属性:

driver.findElement(By.cssSelector("svg")).getAttribute("innerText")

或:

JavascriptExecutor js = (JavascriptExecutor)driver;
js.executeScript("return arguments[0].innerText;", element);

但请注意,并非所有浏览器都实现了此属性,并且返回的文本可能因浏览器而异,尤其是在文本由多个文本节点组成时的换行符处。

关于 python Selenium : Safari returns different text for span than Chrome and Firefox,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47101858/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com