beautifulsoup 4チュートリアル(一)基礎知識と最初の爬虫類

3017 ワード

beautifulsoup 4チュートリアル(1)基礎知識と最初の爬虫類beautifulsoup 4チュートリアル(2)bs 4の4大オブジェクトbeautifulsoup 4チュートリアル(3)ドキュメントツリーの遍歴と検索beautifulsoup 4チュートリアル(4)cssセレクタ

一、基礎知識


1.
BeautifulSoupは入力ドキュメントを自動的にUnicode符号化に変換し、出力ドキュメントをutf-8符号化に変換します.ドキュメントに符号化方法が指定されていない限り、符号化方法を考慮する必要はありません.この場合、Beautiful Soupは符号化方法を自動的に認識できません.そして、元の符号化方法を説明するだけでいいです.
2.
Beautiful Soup 3は現在開発を停止しており、現在のプロジェクトではBeautiful Soup 4を使用することを推奨していますが、BS 4に移植されています.つまり、インポート時にimport bs 4が必要です.ここではBeautiful Soup 4.3.2(BS 4と略称)を使用しています.また、BS 4はPython 3のサポートが不十分だと言われていますが、Python 2を使用しています.7.7、もし小さい仲間がPython 3バージョンを使うならば、BS 3バージョンをダウンロードすることを考慮することができます.
3.
pipまたはeasy_を利用できますインストールは、次の2つの方法で1 easy_install beautifulsoup41 pip install beautifulsoup4を使用できます.
4.
autiful SoupはPython標準ライブラリのHTML解析器をサポートし、サードパーティの解析器もサポートしています.インストールしないと、PythonはPythonのデフォルトの解析器を使用します.lxml解析器はより強く、より速く、インストールをお勧めします.pip install lxml
5.
ぶんせきき
使用方法
メリット
劣勢
Python標準ライブラリ
BeautifulSoup(markup, “html.parser”)
Pythonの内蔵標準ライブラリの実行速度が適当な文書のフォールトトレランス能力が強いPython 2.7.3 or 3.2.2)前の文書
フォールトトレランスが悪い
lxml HTML解析器
BeautifulSoup(markup, “lxml”)
高速ドキュメントのフォールトトレランス機能
C言語ライブラリのインストールが必要です
lxml XML解析器
BeautifulSoup(markup, [“lxml”, “xml”])BeautifulSoup(markup, “xml”)
速度が速くXMLを唯一サポートする解析器
C言語ライブラリのインストールが必要です
html5lib
BeautifulSoup(markup, “html5lib”)
最適なフォールトトレランスは、ドキュメントをブラウザで解析してHTML 5形式のドキュメントを生成します.
速度が遅い外部拡張に依存しない

二、最初の簡単な爬虫類

#-*-coding:utf-8-*-
from bs4 import BeautifulSoup

html = """
The Dormouse's story

The Dormouse's story

Once upon a time there were three little sisters; and their names were , Lacie and Tillie; and they lived at the bottom of a well.

...

"""
# beautifulsoup # html beautifulsoup , : #soup = BeautifulSoup(open('index.html')) soup = BeautifulSoup(html) # print soup.prettify()