pythonでWebスクレイピングするにあたり、メッチャ便利なのがBeautifulSouというパッケージ。
コレを使ってHTMLの構文解析をしますが、コマンドラインでBeautifulSoupをインストールして、python3でインポートしようにも出来ないという問題がボクのパソコンで発生しました。
コマンドで上手くインスコできなかったBeautifulSoup
コマンドは「もう入ってるよ」と言っているのですが、よく見てみるとインストール先はpython2、ボクが使いたいpython3ではない。
ボクはVMwareを使ってwindows7をホストOSにして、Kali LinuxをゲストOSに設定しているのですが、Kali Linuxのデフォルト設定がpython2のようで、それが原因でpython2にいつの間にかインストールされたのかもしれません。
他の人のブログを読んで、なんとかターミナルでpython3にBeautifulSoupをインストールしようと頑張るのですが、上手くいかず。
いろいろ試して、全く違うアプローチでpython3にBeautifulSoupをインストールすることに成功しました。
実はPycharmにBeautidulSoupがすでに入ってた
結論を先に言ってしまうと、pycharmのセッティングでインストール先にpython3を指定、そしてBeautifulsoup4を導入できるようにさせます。
まず、右上のFileを開け、そこからsetting…またはSetting for New Projectsを開けます。
違いとして、Settingは現在のプロジェクト、Setting for New projectsは新しいプロジェクトを作成する際に、と捉えれば良いと思います。
Project Interpreterを選び、Pyhton3を選択します。
Package, Version, Latest versionの横にプラスの印がありますので、そこをクリックします。
すると左側にダーッとリストが現れます、パッケージ一覧です。
もうお察しでしょうが、ここにbeautifusoup4も含まれています。リストからbeautifulsoup4を探してクリック。
あとは、ApllyかOKを押せばインストール完了です。
これでpycharmのデバック検出に引っかかっていた from bs4 import BeautifulSoup4 も正常に認識されるようになりました。
このやり方はpycharmでしか使えない方法だと思いますので、他のIDEをお使いの方は試すことが出来ないかもしれません。
その時は、お使いのIDE特有のやり方でBeautifulsoup4をインストールするか、コマンドプロンプトやターミナルでやる方法をゴリゴリ調べるしかないかもしれません、ボクは諦めましたけど。