前提
BeautifulSoupで指定クラス(同じクラスが複数存在)全てから
aタグを全て検索し、URLリストを作成したい。
全くの初心者ですので至らぬ点多々あると思いますが、
手ほどきよろしくお願いいたします。
実現したいこと
複数存在する「class = abc」のaタグを全て検索しURLリストを作成したい。
発生している問題・エラーメッセージ
以下のソースコードの「class = abc」の中のaタグのhref属性だけを取り出したいです。
該当のソースコード
Python
1#以下HTMLから[text2, http://2],[text3, http://3],[text5, http://5],[text6, http://6],…,[text99, http://99],[text100, http://100]の配列を作りたい。 2#textのない http://1 と http://4 とhttp://97 は可能なら除きたい。 3 4 5#HTML>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 6<div class="abc"> 7 <a href="http://1"></a> 8 <ul> 9 <li> 10 <a href="**http://2**">**text2**</a> 11 </li> 12 <li> 13 <a href="**http://3**">**text3**</a> 14 </li> 15 </ul> 16</div> 17 18<div class=xyz> 19略 20</div> 21 22<div class="abc"> 23 <a href="http://4"></a> 24 <ul> 25 <li> 26 <a href="**http://5**">**text5**</a> 27 </li> 28 <li> 29 <a href="**http://6**">**text6**</a> 30 </li> 31 </ul> 32</div> 33 34<div class=xxxyyyzzz> 35~略~ 36</div> 37 38~略~ 39 40<div class="abc"> 41 <a href="http://98"></a> 42 <ul> 43 <li> 44 <a href="**http://99**">**text99**</a> 45 </li> 46 <li> 47 <a href="**http://100**">**text100**</a> 48 </li> 49 </ul> 50</div> 51 52#HTML終わり>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 53 54
試したこと
Python
1soup = BeautifulSoup(html, "html.parser") 2listbase = soup.find_all(class_="abc") 3 4urllist = [] 5for element in listbase: 6 urllist = element.find_all('a') 7 8#とりあえずこのコードでaタグを全てとってみようと思いましたが、最後の1塊しかとれませんでした。 9 10#出力 11[ <a href="http://98"></a>, 12<a href="**http://99**">**text99**</a>, 13<a href="**http://100**">**text100**</a>] 14
補足情報(FW/ツールのバージョンなど)
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。