BeautifulSoupライブラリの使用
2113 ワード
1.インストール
ここでは最も便利なインストール方式を用いて,cmdにコマンドを入力する(コンピュータにpipがインストールされていることを前提とする)
2.beautifulsoup 4の基本要素
きほんげんそ
説明
Tag
ラベル、最も基本的な情報組織ユニット、それぞれ<>と>で先頭と末尾を明記します
Name
ラベルの名前、...の名前は'p'、フォーマット:.name
Attributes
ラベルのプロパティ、辞書形式の組織、フォーマット:.attrs
NavigableString
ラベル内の非属性文字列、<>...>の文字列、フォーマット:.string
Comment
ラベル内の文字列のコメント部分、特殊なCommentタイプ
3.beautifulsoup 4の遍歴方法
3.1下り遍歴
ツールバーの
説明
.contents
サブノードのリスト、すべてのサブノードをリストに格納
.children
サブノードの反復タイプ..contentsと同様に、サブノードをループするために使用されます.
.descendants
子孫ノードの反復タイプ.すべての子孫ノードを含み、ループループに使用されます.
3.2上り遍歴
ツールバーの
説明
.parent
ノードの親ラベル
.parents
ノードの先輩ラベルの反復タイプ.先輩ノードをループするために使用されます.
3.3平行遍歴
ツールバーの
説明
.next_sibling
HTMLテキスト順の次の平行ノードラベルを返します
.previous_sibling
HTMLテキスト順の前の平行ノードラベルを返します
.next_siblings
反復タイプは、HTMLテキスト順の後続のすべての平行ノードラベルを返します.
.previous_siblings
反復タイプは、HTMLテキスト順のすべての平行ノードラベルを返します.
4.beautifulsoup 4ライブラリの出力フォーマット
.prettify()はHTMLテキスト<>とその内容をさらに追加する'.prettify()はラベルに使用できます.方法:.prettify()
5.bs 4ベースの検索方法
<>.find_all(name, attrs, recursive, string, **kwargs)
検索結果を格納するリストタイプを返します name:ラベル名の取得文字列 attrs:ラベル属性値の検索文字列、寸法可能属性検索 recursive:子孫をすべて取得するかどうか、デフォルトTrue string:<>...における文字列領域の検索文字列 **kwargs制御アクセスパラメータ 簡略化された使い方
(.)は.find_に等しいall(..)
soup(.)はsoup.find_に等しいall(..)
拡張メソッド
方法
説明
<>.find()
検索して1つの結果のみを返します.同じ.find_all()パラメータ
<>.find_parents()
先輩ノードで検索し、リストタイプを返します.同じ.find_all()パラメータ
<>.find_parent()
先輩ノードで結果を返します.同じ.find()パラメータ
<>.find_next_siblings()
後続の平行ノードで検索し、リストタイプを返します.同じ.find_all()パラメータ
<>.find_next_sibling()
後続の平行ノードで結果を返します.同じ.find()パラメータ
<>.find_previous_siblings()
シーケンス平行ノードで検索し、リストタイプを返します.同じ.find_all()パラメータ
<>.find_previous_sibling()
前の順序の平行ノードで結果を返します.同じ.find()パラメータ
ここでは最も便利なインストール方式を用いて,cmdにコマンドを入力する(コンピュータにpipがインストールされていることを前提とする)
pip install beautifulsoup4
2.beautifulsoup 4の基本要素
きほんげんそ
説明
Tag
ラベル、最も基本的な情報組織ユニット、それぞれ<>と>で先頭と末尾を明記します
Name
ラベルの名前、...の名前は'p'、フォーマット:.name
Attributes
ラベルのプロパティ、辞書形式の組織、フォーマット:.attrs
NavigableString
ラベル内の非属性文字列、<>...>の文字列、フォーマット:.string
Comment
ラベル内の文字列のコメント部分、特殊なCommentタイプ
3.beautifulsoup 4の遍歴方法
3.1下り遍歴
ツールバーの
説明
.contents
サブノードのリスト、すべてのサブノードをリストに格納
.children
サブノードの反復タイプ..contentsと同様に、サブノードをループするために使用されます.
.descendants
子孫ノードの反復タイプ.すべての子孫ノードを含み、ループループに使用されます.
3.2上り遍歴
ツールバーの
説明
.parent
ノードの親ラベル
.parents
ノードの先輩ラベルの反復タイプ.先輩ノードをループするために使用されます.
3.3平行遍歴
ツールバーの
説明
.next_sibling
HTMLテキスト順の次の平行ノードラベルを返します
.previous_sibling
HTMLテキスト順の前の平行ノードラベルを返します
.next_siblings
反復タイプは、HTMLテキスト順の後続のすべての平行ノードラベルを返します.
.previous_siblings
反復タイプは、HTMLテキスト順のすべての平行ノードラベルを返します.
4.beautifulsoup 4ライブラリの出力フォーマット
.prettify()はHTMLテキスト<>とその内容をさらに追加する'.prettify()はラベルに使用できます.方法:.prettify()
5.bs 4ベースの検索方法
<>.find_all(name, attrs, recursive, string, **kwargs)
検索結果を格納するリストタイプを返します
(.)は.find_に等しいall(..)
soup(.)はsoup.find_に等しいall(..)
拡張メソッド
方法
説明
<>.find()
検索して1つの結果のみを返します.同じ.find_all()パラメータ
<>.find_parents()
先輩ノードで検索し、リストタイプを返します.同じ.find_all()パラメータ
<>.find_parent()
先輩ノードで結果を返します.同じ.find()パラメータ
<>.find_next_siblings()
後続の平行ノードで検索し、リストタイプを返します.同じ.find_all()パラメータ
<>.find_next_sibling()
後続の平行ノードで結果を返します.同じ.find()パラメータ
<>.find_previous_siblings()
シーケンス平行ノードで検索し、リストタイプを返します.同じ.find_all()パラメータ
<>.find_previous_sibling()
前の順序の平行ノードで結果を返します.同じ.find()パラメータ