26

以下にhtmlがあるWebページからデータを取得しようとしています

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

私の目標は、「#/word/1/」を解析することです

        target = self.driver.find_element_by_class_name('someclass')
        print target
        print target.text
        print target.get_attribute("css=a@href")
        print target.tag_name

しかし、出力は

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

私は非常に多くの方法を試しましたが、対象のクラス内で「a href」のコンテンツを取得する方法がないようです。

ページのソースコードを取得してから文字列検索を行うことは本当にしたくありません..

とにかくそれを得るために?

4

3 に答える 3

58

私の知る限り、子要素を検索することで href を取得できます

div = self.driver.find_element_by_class_name('someclass')
div.find_element_by_css_selector('a').get_attribute('href')
于 2013-10-29T17:03:20.677 に答える
10

これでうまくいくはずです:

self.driver.find_element_by_css_selector('.someclass a').get_attribute('href')
于 2013-10-29T17:04:13.047 に答える