前提・実現したいこと
Pythonでスクレピングの学習をしています
参考書に書かれている通り、スクレイピングをしたいです
いろいろ調べましたが、bs4のインストールもできています
発生している問題・エラーメッセージ
bs4モジュールがないと、エラーが表示されます
該当のソースコード
Pyhton
1 2#全体のコードです 3import urllib.request 4from bs4 import BeautifulSoup 5 6class Scraper: 7 #スクレイピング対象となるWebサイトのURLを受け取る。引数を受け取る 8 def __init__(self, site): 9 self.site = site 10 11 #スクレイピングしたいタイミングで、このメソッドを呼び出す 12 def scrape(self): 13 #urlopen関数はWebサイトへのリクエストを行う。Responseオブジェクトが返され、この中でHTMLと追加情報が格納されている 14 r = urllib.request.urlopen(self.site) 15 html = r.read() 16 parser = "html.parser" 17 #BeautifulSoupオブジェクトにHTML変数とHTMLをパースして欲しいことを伝える 18 sp = BeautifulSoup(html, parser) 19 #find_allメソッドはイテラブルなオブジェクト・・・条件に合うHTML要素を取得する 20 #<a></a>タグを全て集めて返す様に伝える 21 for tag in sp.find_all("a"): 22 #ループが回る度に変数tagに新しいTagのオブジェクトが代入される 23 #ここで必要なのはURLが代入されているhrefインスタンス変数 24 url = tag.get("href") 25 if url is None: 26 continue 27 if "html" in url: 28 print("\n" + url) 29 30news = "https://news.google.com/" 31Scraper(news).scrape() 32 33#結果 34ModuleNotFoundError: No module named 'bs4'
試したこと
いろいろ調べながら確認しましたが、インストールはされている様です
pip list
pip install beautifulsoup4
pip freeze
などをして確認しました
以下に表示されたのを記載します
補足情報(FW/ツールのバージョンなど)
bs4 0.0.1
beautifulsoup4==4.6.0
Mac OSです
pythonを複数インストールとかしていませんか?
回答2件
あなたの回答
tips
プレビュー