Beautiful-soup-installation
美しいスープ-インストール
BeautifulSoupは標準のPythonライブラリではないため、最初にインストールする必要があります。 最新のBeautifulSoup 4ライブラリ(別名BS4)をインストールします。
既存のセットアップを妨害しないように作業環境を分離するには、まず仮想環境を作成します。
仮想環境の作成(オプション)
仮想環境では、外部の設定に影響を与えることなく、特定のプロジェクト用に分離されたpythonの作業コピーを作成できます。
Pythonパッケージマシンをインストールする最良の方法は、pipを使用することですが、pipがまだインストールされていない場合(コマンドまたはシェルプロンプトで–“ pip –version”を使用して確認できます)、以下のコマンドを実行してインストールできます-
Linux環境
$sudo apt-get install python-pip
Windows環境
Windowsにpipをインストールするには、次のようにします-
- [[1]]
- コマンドプロンプトを開き、get-pip.pyファイルを含むフォルダーに移動します。
- 次のコマンドを実行します-
>python get-pip.py
以上で、pipがWindowsマシンにインストールされました。
以下のコマンドを実行して、インストールされているpipを確認できます-
>pip --version
pip 19.2.3 from c:\users\yadur\appdata\local\programs\python\python37\lib\site-packages\pip (python 3.7)
仮想環境のインストール
コマンドプロンプトで以下のコマンドを実行します-
>pip install virtualenv
実行すると、以下のスクリーンショットが表示されます-
以下のコマンドは、現在のディレクトリに仮想環境(「myEnv」)を作成します-
>virtualenv myEnv
スクリーンショット
仮想環境をアクティブ化するには、次のコマンドを実行します-
>myEnv\Scripts\activate
上のスクリーンショットでは、仮想環境「myEnv」の下にいることを示す接頭辞として「myEnv」があることがわかります。
仮想環境を終了するには、deactivateを実行します。
(myEnv) C:\Users\yadur>deactivate
C:\Users\yadur>
仮想環境の準備ができたら、beautifulsoupをインストールしましょう。
BeautifulSoupのインストール
BeautifulSoupは標準ライブラリではないため、インストールする必要があります。 BeautifulSoup 4パッケージ(bs4として知られています)を使用します。
Linuxマシン
システムパッケージマネージャーを使用してDebianまたはUbuntu Linuxにbs4をインストールするには、次のコマンドを実行します-
$sudo apt-get install python-bs4 (for python 2.x)
$sudo apt-get install python3-bs4 (for python 3.x)
easy_installまたはpipを使用してbs4をインストールできます(システムパッケージャを使用したインストールで問題が発生した場合)。
$easy_install beautifulsoup4
$pip install beautifulsoup4
(python3を使用している場合は、easy_install3またはpip3をそれぞれ使用する必要がある場合があります)
Windowsマシン
Windowsにbeautifulsoup4をインストールするのはとても簡単です。特に、pipが既にインストールされている場合はそうです。
>pip install beautifulsoup4
これで、beautifulsoup4がマシンにインストールされました。 インストール後に発生するいくつかの問題について話しましょう。
インストール後の問題
あなたが遭遇する可能性のあるWindowsマシンでは、間違ったバージョンがインストールされているエラーが主に-
- エラー: _ImportError“ HTMLParserという名前のモジュールはありません” _ 。Python 3でpython 2バージョンのコードを実行している必要があります。
- エラー: _ImportError“ html.parserという名前のモジュールはありません” _ エラー。Python2でPython 3バージョンのコードを実行している必要があります。
上記の2つの状況から抜け出す最善の方法は、BeautifulSoupを再インストールして、既存のインストールを完全に削除することです。
ROOT_TAG_NAME = u ’[document]’の行に _SyntaxError“ Invalid syntax” _ が表示された場合、パッケージをインストールするだけで、python 2コードをpython 3に変換する必要があります-
$ python3 setup.py install
またはbs4ディレクトリでpythonの2から3への変換スクリプトを手動で実行する-
$ 2to3-3.2 -w bs4
パーサーのインストール
デフォルトでは、Beautiful SoupはPythonの標準ライブラリに含まれているHTMLパーサーをサポートしますが、lxmlパーサーやhtml5libパーサーなどの多くの外部サードパーティpythonパーサーもサポートします。
lxmlまたはhtml5libパーサーをインストールするには、コマンドを使用します-
Linuxマシン
$apt-get install python-lxml
$apt-get insall python-html5lib
Windowsマシン
$pip install lxml
$pip install html5lib
一般に、ユーザーは速度のためにlxmlを使用します。古いバージョンのpython 2(2.7.3バージョンより前)またはpython 3(3.2.2より前)を使用している場合は、Pythonの組み込みHTMLパーサーがlxmlまたはhtml5libパーサーであることが推奨されます。古いバージョンの処理にはあまり適していません。
美しいスープを実行する
HTMLページの1つ(Webページを取得– [[2]]
以下のコードでは、ウェブページからタイトルを抽出しようとしています-
from bs4 import BeautifulSoup
import requests
url = "https://www.finddevguides.com/index"
req = requests.get(url)
soup = BeautifulSoup(req.text, "html.parser")
print(soup.title)
出力
<title>H2O, Colab, Theano, Flutter, KNime, Mean.js, Weka, Solidity, Org.Json, AWS QuickSight, JSON.Simple, Jackson Annotations, Passay, Boon, MuleSoft, Nagios, Matplotlib, Java NIO, PyTorch, SLF4J, Parallax Scrolling, Java Cryptography</title>
一般的なタスクの1つは、Webページ内のすべてのURLを抽出することです。 そのためには、以下のコード行を追加する必要があります-
for link in soup.find_all('a'):
print(link.get('href'))
出力
https://www.finddevguides.com/index
https://www.finddevguides.com/about/about_careers
https://www.finddevguides.com/questions/index.php
https://www.finddevguides.com/online_dev_tools
https://www.finddevguides.com/codingground
https://www.finddevguides.com/current_affairs
https://www.finddevguides.com/upsc_ias_exams
https://www.finddevguides.com/tutor_connect/index.php
https://www.finddevguides.com/whiteboard
https://www.finddevguides.com/netmeeting.php
https://www.finddevguides.com/index
https://www.finddevguides.com/tutorialslibrary
https://www.finddevguides.com/videotutorials/index.php
https://store.finddevguides.com
https://www.finddevguides.com/gate_exams_tutorials
https://www.finddevguides.com/html_online_training/index.asp
https://www.finddevguides.com/css_online_training/index.asp
https://www.finddevguides.com/3d_animation_online_training/index.asp
https://www.finddevguides.com/swift_4_online_training/index.asp
https://www.finddevguides.com/blockchain_online_training/index.asp
https://www.finddevguides.com/reactjs_online_training/index.asp
https://www.tutorix.com
https://www.finddevguides.com/videotutorials/top-courses.php
https://www.finddevguides.com/the_full_stack_web_development/index.asp
….
….
https://www.finddevguides.com/online_dev_tools
https://www.finddevguides.com/free_web_graphics
https://www.finddevguides.com/online_file_conversion
https://www.finddevguides.com/netmeeting.php
https://www.finddevguides.com/free_online_whiteboard
http://www.finddevguides.com
https://www.facebook.com/finddevguidesindia
https://plus.google.com/u/0/+finddevguides
http://www.twitter.com/finddevguides
http://www.linkedin.com/company/finddevguides
https://www.youtube.com/channel/UCVLbzhxVTiTLiVKeGV7WEBg
https://www.finddevguides.com/index
/about/about_privacy#cookies
/about/faq
/about/about_helping
/about/contact_us
同様に、beautifulsoup4を使用して有用な情報を抽出できます。
上記の例の「スープ」についてさらに理解しましょう。