簡體   English   中英

如何使用硒獲取隱藏跨度的文本值

[英]How to get text value of hidden span using selenium

我在網站上獲取電話號碼時遇到了麻煩。 跨度看起來像,

<span itemprop="telephone" class="hidden" id="telefoon_28836_hidden">010 - 79 53 364</span> 

我試過這段代碼

telno = driver.findElement(By.xpath("//span[@itemprop='telephone']")).getText();

而且我的價值空虛。

這是在web驅動程序加載頁面之后的源代碼。

<div style="float: left; clear: both; padding-right: 7px;">Adres:<br>&nbsp;</div>
                            <div itemtype="http://schema.org/PostalAddress" style="float: left; color:#c71d22; width: 400px;">
                                <span itemprop="streetAddress">Mathenesserweg 49A BG</span><br>
                                <span itemprop="postalCode">3027 HE</span> <span itemprop="addressLocality"> Rotterdam </span>
                            </div>
                                                            <div style="float: left; clear: left; width: 70px;">&nbsp;<br>Telefoon:</div>
                                <div style="float: left; color:#c71d22; width: 400px;">&nbsp;<br>
                                    <span id="telefoon_28836_visible"><a href="#" class="countStatistieken" id="telefoon_28836" style="color:#c71d22;">Klik hier</a></span>
                                    <span itemprop="telephone" class="hidden" id="telefoon_28836_hidden">010 - 79 53 364</span>
                                </div>

如果我使用

straat = driver.findElement(By.xpath("//span[@itemprop='streetAddress']")).getText();

我得到“Mathenesserweg 49A BG”它的工作正常,但我認為因為電話號碼的類“隱藏”我得到空值。 有人可以幫我解決這個問題。 謝謝。

創建Selenium的目的是模仿用戶輸入。 用戶無法看到隱藏的元素,這就是您無法找到它的原因。

您應該直接在文檔上查詢以查找元素

String script = "return document.getElementById('telefoon_28836_hidden').innerHTML";
String telno = (String) ((JavascriptExecutor) driver).executeScript(script)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM