2017-05-11 1 views
0

Ich versuche, Elemente in this page zu finden und es in Objekte (DomElement) zu machen einige Tests davon, das Problem ist mit Element reg-error-yid ist es ein inner- div innerhalb div yid-Feld-Vorschlag, versuchte ich zu getElementById, byName, byXPath und getFirstByXPath es ist alles nicht funktioniert, auch und driver.findElement(By.className("oneid-error-message")) ich versuchte WebClient mit WebDriver zu ändern verwenden es auch nicht funktioniertSo finden Sie Element mit Tag Alarm innerhalb der äußeren div

die elemnt der registrierten Nachricht

<div id="reg-error-yid" class="oneid-error-message" data-error="messages.IDENTIFIER_EXISTS" role="alert">A Yahoo account already exists with this email address. <a href="https://login.yahoo.com/?intl=xa&amp;lang=en-JO&amp;src=ym&amp;.intl=xa&amp;specId=yidReg&amp;.done=https%3A%2F%2Fmail.yahoo.com&amp;nr=1&amp;step=2&amp;.crumb=qP.UnkGzfkR&amp;login=abtallaldigital">Sign in</a>.</div> 

mein Code

final HtmlPage page1 = webClient.getPage("https://login.yahoo.com/account/create?specId=yidReg&lang=en-JO&src=ym&done=https%3A%2F%2Fmail.yahoo.com&display=login&intl=xa"); 

      final DomElement firstName = page1.getElementById("usernamereg-firstName"); 
      final DomElement emailAddress = page1.getElementById("usernamereg-yid"); 
      final DomElement takenMsg = page1.getElementById("reg-error-yid"); 

Antwort

0

Ich bin mir nicht sicher über Ihre Notwendigkeit. Ich kann hier nichts sagen.

Aber wenn Sie versuchen, das Dokument zu analysieren, können Sie Jsoup zum Parsen des Dokuments verwenden.

Die select ist nützlicher und einfacher im Vergleich zu getElementById, byName, byXPath.

org.jsoup.nodes.Document doc = Jsoup.connect("https://login.yahoo.com/account/create?specId=yidReg&lang=en-JO&src=ym&done=https%3A%2F%2Fmail.yahoo.com&display=login&intl=xa").get(); 
org.jsoup.select.Elements takenMsgs = doc.select("div[id=reg-error-yid]"); 
org.jsoup.select.Element takenMsgFirst = doc.select("div[id=reg-error-yid]").first; 

Sehen Sie, wenn Sie org.jsoup.select.Elements-com.gargoylesoftware.htmlunit.html.DomElement

+0

umwandeln kann danke, sehen diese Frage [link] (http://stackoverflow.com/questions/43901997/htmlunit-always-gives-multiple-javascript- Ausnahmen-nach-dem-Ausführen-des-Projekts) verwandt werden –

Verwandte Themen