簡単Beautiful Soupチュートリアル


Beautiful Soupとは


次の言葉は公式文書から引用されます.
Beautiful Soupは、HTMLまたはXMLファイルからデータを抽出できるPythonライブラリである.それはあなたの好きな変換器を通じて慣用的なドキュメントのナビゲーションを実現することができて、ドキュメントを探して、修正する方法.Beautiful Soupは、数時間から数日の作業時間を節約します.
確かに,Beautifulは爬虫類応用において,Html要素を解析的に抽出する簡単で使いやすいが効率的なライブラリである.

Beautiful Soupのインストール


インストールの仕方もいろいろありますが、ソースコードからコンパイルしてインストールしたり、pythonのパッケージマネージャを使って迅速にインストールしたりすることができます.後者は一般的な方法です.
pip install beautifulsoup4

これにより、BeautifulSoupはpythonでfrom bs4 import BeautifulSoupで使用できます.

Beautiful Soupの使用


たとえばhtmlは次のとおりです.
<html>
    <body>
        <h1 id="title">hello world!h1>
        <a href="#" class="link">This is link1a>
        <a href="# link2" class="link">This is link2a>
    body>
html>

BeautifulSoupにページを読み込み、
from bs4 import BeautifulSoup
html_sample = 
'''

    
        

hello world!

This is link1 This is link2 '''
soup = BeautifulSoup(html_sample, 'html.parser')#html.parser python html

1.特定のタグのhtml要素を探し出す

header = soup.select('h1')
print(header)

結果は次のとおりです.
[<h1 id="title">hello world!h1>]

テキストの内容だけを保持したい場合は、
print(header[0].text)

2.特定のCSS属性を含む要素を探し出す


selectを使用すると、cssスタイルシートのすべてのid(idの前に#を追加する必要があります)とclass(classの前に追加する必要があります.)を見つけることができます.の要素
title = soup.select('#title')
print(title)

for link in soup.select('.link'):
print(link)

次のように表示されます.
[<h1 id="title">hello world!h1>]
<a class="link" href="#">This is link1a>
<a class="link" href="# link2">This is link2a>

3.あるラベルの特定の属性を探し出す

alinks = soup.select('a')
for link in alinks:
    print(link['href'])

結果は次のとおりです.
#
# link2

まとめ


以上がBeautiful Soupの簡単な使い方で、公式ドキュメントに多く使われています.これは不思議なライブラリで、使用時にいつでもドキュメントを見て、心得を記録することができます.