2015-11-09 4 views
1

Im пытается получить адрес электронной почты из следующего кода, но я не уверен, как это сделать. Любая помощь будет оцененаSelenium get String value из Div OnClick element

<div class="taLnk hvrIE6 fl" onclick="ta.trackEventOnPage('Listing', 'Email', 7741695, 1); return ta.call('ta.locationDetail.checkEmailAction',event,this,'[email protected]', 7741695, '\x41\x6e\x20\x69\x6e\x71\x75\x69\x72\x79\x20\x66\x72\x6f\x6d\x20\x61\x20\x54\x72\x69\x70\x41\x64\x76\x69\x73\x6f\x72\x20\x75\x73\x65\x72\x20\x66\x6f\x72\x20\x41\x6e\x6e\x61\x4c\x65\x6e\x61', 'Restaurant_Url_Restaurant_Review');"> 
+2

Что вы пытаетесь? пожалуйста, поделитесь этим кодом. –

ответ

2

Вы должны использовать Селен, чтобы получить значение атрибута OnClick, а затем использовать JAVA Струны для того чтобы отделить из требуемой электронной почты.

// find the element and get the attribute value of onclick 
String onClickValue = driver.findElement(By.xpath("//div[@class= 'taLnk hvrIE6 fl']")).getAttribute("onclick"); 

// split the onclick value on ',' 
String[] allTextArray = onClickValue.split(","); 

// iterate through the array and is @ is contained with the text, print text 
for (String text : allTextArray) { 
    if (text.contains("@")) { 
     System.out.println(text); 
     return; 
    } 
} 

Примечание: XPath из div может отличаться. Я написал это на основе того, что вы указали в небольшом HTML.