2017-08-25 1 views
0

これは私のコードです:IDで見つかった要素からのhrefを取得する - Pythonの - セレン

dispatch_button = browser.find_elements_by_xpath("//*[contains(@id, 'alarm')]") 
href = dispatch_button.get_attribute('href') 
print(href) 

これは、私が働いているHTMLです:

<a href="/missions/12357831" class="btn btn-default btn-xs lightbox-open" id="alarm_button_12357831"> Dispatch</a> 

IDをし、HREF両方を含みます私は部分的なIDを使用してそれを探している理由です変更番号。私はその部分IDによってdispatch_buttonを見つけるためにしようとしている

href = dispatch_button.get_attribute('href') 
AttributeError: 'list' object has no attribute 'get_attribute' 

、及びそのHREFを使用します。私はこのエラーを取得していますなぜ見ることができないとして、私は完全に困惑

答えて

0

あなたは、単一のWebElementを取得したい場合は、代わりにfind_elements_by_xpath()find_element_by_xpath()を使用する必要があります。

dispatch_button = browser.find_element_by_xpath("//*[contains(@id, 'alarm')]") 
href = dispatch_button.get_attribute('href') 

または指定したセレクタにマッチした複数の要素処理する場合:

dispatch_buttons = browser.find_elements_by_xpath("//*[contains(@id, 'alarm')]") 
hrefs = [dispatch_button.get_attribute('href') for dispatch_button in dispatch_buttons] 

をまたあなたが試すことができますが必要なアンカーを見つけるにはlink_text

dispatch_button = browser.find_element_by_link_text("Dispatch") 
+0

それは理にかなっています。 – user3210248

+0

ようこそ。あなたの問題を解決した場合は、回答を受け入れることができます – Andersson

関連する問題