複数のClass属性の中身(要素)をスクレイピングをしたいのですができません。
何卒ご教授をお願いいたします。
【試してみたこと】
①AAA = soup.find(class_="st-uiwrap" and "blog-long m-b50 p-x20")
print(AAA.text)
②BBB = soup.select_one("[class='st-uiwrap'],[class='blog-long m-b50 p-x20']")
print(BBB.text)
③CCC = soup.select(".st-uiwrap .blog-long m-b50 p-x20")
CCC.result = []
for i in CCC:
CCC.result.append(i.text)
print(CCC.result)
【結果】
①"blog-long m-b50 p-x20"の要素だけが表示される
②'st-uiwrap'の要素だけが表示される
③[]が表示される(空が表示される)
[HTML]
<ul class="st-uiwrap"> <li class="today-txt"><a href="/hiragana/chart/">あの段</a></li> <li><a href="/hiragana/chart/"><span class="rise">あいうえお<br class="pc-none">(+0.01%)</span></a></li> </ul> <div class="blog-long m-b50 p-x20"> <h5 class="m-b10">かの段</h5> <p>かきくけこ</p> </div>ちなみに単体でDDD = soup.find(class_="st-uiwrap")
print(DDD.text)とやると、あいうえお(+0.01%)
EEE = soup.find(class_="blog-long m-b50 p-x20")
print(EEE.text)とやると、かきくけこ
とちゃんと表示されるのですが上記のように複数のClass属性をスクレイピングしようとするとできません。(【あいうえお】【かきくけこ】と表示したい)
やり方がどこか間違えているのでしょうか?
どうすれば複数のClass属性の属性値の中身をスクレイピングできますか?
回答1件
あなたの回答
tips
プレビュー