2016-07-27 2 views
0

Это структура:Как FindElement По Xpath в Селен PhantomJS C#

<div id="footer"> 
    <div id="debugTxt" style="color:blue;">Wed Jul 27 2016 10:06:12 GMT+0800 (Sample)Sample<br> 
    Sample<br> 
    Wed Jul 27 2016 10:06:12 GMT+0800 (Sample) Sample<br> 
    Wed Jul 27 2016 10:06:12 GMT+0800 (Sample) Sample!<br> 
    Wed Jul 27 2016 10:06:12 GMT+0800 (Sample) <br> 
    DataTOGET:<a href="http://Please.Get.Me" target="_blank">http://Please.Get.Me</a><br> 
    </div> 
</div> 

Это то, что я пытаюсь сделать:

driver1.FindElement(By.XPath(".//*[@id='debugTxt']")).GetAttribute("value"); 

Можно ли получить значение http://Please.Get.Me ?

+1

Вы хотите, чтобы значение атрибута видимого текста или href? –

ответ

1

С небольшой подстройкой и помощью от alecxe

driver1.FindElement(By.XPath("//*[@id='debugTxt']//a")).GetAttribute("href"); 
2

Вы должны просто настроить ваше выражение, чтобы соответствовать a элементу внутри div:

driver1.FindElement(By.XPath(".//*[@id='debugTxt']/a")).GetAttribute("href"); 
1

Я думаю, что вы хотите, видимый текст ссылки , вы должны попытаться использовать .Text, как показано ниже: -

driver1.FindElement(By.XPath(".//*[@id='debugTxt']/a")).Text; 
Смежные вопросы