2013-10-29 4 views
14

मैं वेबपेज से डेटा पुनः प्राप्त करने कोशिश कर रहा हूँ के भीतर href की सामग्री प्राप्त करने के लिए नीचे दिए गएसेलेनियम कैसे कुछ लक्षित वर्ग

 <div class="someclass"> 
     <p class="name"><a href="#/word/1/">helloworld</a></p> 
     </div> 

मेरा लक्ष्य पार्स करने के लिए है में एचटीएमएल है "#/शब्द/1 /" क्या मैंने किया था

 target = self.driver.find_element_by_class_name('someclass') 
     print target 
     print target.text 
     print target.get_attribute("[email protected]") 
     print target.tag_name 

है, लेकिन उत्पादन

<selenium.webdriver.remote.webelement.WebElement object at 0x10bf16210> 
helloworld 
None 
div 

मैं कई मायनों की कोशिश की हैं, ऐसा लगता है वहाँ ई लक्षित वर्ग के भीतर 'a href' की सामग्री प्राप्त करने का कोई तरीका नहीं है।

मैं वास्तव में क्या करना चाहते हैं न पृष्ठ के स्रोत कोड मिलता है, और फिर उस गूंगा ....

वैसे भी है कि प्राप्त करने के लिए लगता है खोज कर एक स्ट्रिंग, करना है?

+2

क्यों आप वास्तविक एंकर तत्व नहीं मिल रहा है ? 'anchorElement = target.find_element_by_tag_name ('a') '... आप तब कर सकते हैं ....' प्रिंट anchorElement.get_attribute (" href ") '.... सही ....? – Arran

उत्तर

30

जहां तक ​​मुझे पता है आप

div = self.driver.find_element_by_class_name('someclass') 
div.find_element_by_css_selector('a').get_attribute('href') 
7

यह यह तुम्हारे लिए क्या करना चाहिए, चाइल्ड तत्वों के माध्यम से खोज के द्वारा href प्राप्त कर सकते हैं हूँ:

self.driver.find_element_by_css_selector('.someclass a').get_attribute('href')