2011-11-18 5 views
7

मेरे पास वेबपृष्ठ पर एक लिंक है। मैं सेलेनियम 1 के माध्यम से लिंक स्थान पर राइट क्लिक करना और कॉपी करना चाहता हूं? उदाहरण के लिए मेरे पास एक वेबपृष्ठ खोला गया है और इसमें एक लिंक "ऐड बुक" है और मैन्युअल रूप से यदि मैं दायाँ क्लिक करता हूं और लिंक स्थान कॉपी करता हूं तो यह http://webserver/webapps/books/addbook.jsp?book_id=44_1&type=reference&promo=noneक्या मुझे सेलेनियम के माध्यम से लिंक स्थान मिल सकता है?

द्वारा लिंक कॉपी करने का कोई तरीका है टेक्स्ट का XPath दे रहा है: "पुस्तक जोड़ें"? या जावास्क्रिप्ट का उपयोग कर?

अग्रिम धन्यवाद।

उत्तर

6

लिंक स्थान (पाने के लिए के साथ सेलेनियम-WebDriver bellow कोड का उपयोग कर रहा हूँ यह एक स्ट्रिंग, जिस पर आप इस तरह एक Xpath आवेदन कर सकते हैं रिटर्न और जावा बाध्यकारी):

WebElement link = driver.findElement(By.linkText("add book")); 
String linkLocatin = link.getAttribute("href"); 
System.out.println("Link Location "+linkLocatin); 
+0

धन्यवाद सूर्य, लेकिन हम वेबड्राइवर का उपयोग नहीं कर रहे हैं। सीधे हम सेलेनियम का उपयोग कर रहे हैं। –

+1

ठीक है ... सेलेनियम 1.0 में आप लिंक स्थान प्राप्त करने के लिए कोड को हल करने का प्रयास कर सकते हैं: स्ट्रिंग लिंक स्थान = selenium.getAttribute ("// a [text() = \" पुस्तक जोड़ें \ "] @ href"); – Surya

0

सेलेनियम इंटरफ़ेस एक

getHtmlSource() 

-method है।

//a[text()="add book"] 
1

Selenese में मैं कुछ इस तरह का उपयोग करें::

<tr> 
    <td>storeAttribute</td> 
    <td>xpath=//a[text()="add book"]@href</td> 
    <td>linkToBook</td> 
</tr> 
<tr> 
    <td>echo</td> 
    <td>${linkToBook}</td> 
    <td></td> 
</tr> 
संबंधित मुद्दे