1
私は、いくつかのアカウントでインスタグのフォロワーの数を取得するプロセスを自動化しようとしています。BeautifulSoupを使用してJavascriptからテキストを抽出してフォロワーの数を取得する
例えば、https://www.instagram.com/taylorswift/など
私はBeautifulSoupのようなライブラリを使用しようとしました。しかし、1つの問題は、フォロワーの数がjavascriptタイプの下にあり、他の多くのテキストがあることです。
私のコードは次のようになります。
>>> from bs4 import BeautifulSoup
>>> import requests
>>> url = "https://www.instagram.com/taylorswift/"
>>> page = requests.get(url)
>>> soup = BeautifulSoup(page.content)
>>> script = soup.select("script")
私は出力のみとフォロワーの数を取得する方法を聞いても? (つまり76.8m)私はPythonとスクリプティングの初心者です:/ありがとう。
の詳細の多くにアクセスすることができますあなたはBeautifulSoupの使用を中止し、Seleniumを起動する方がよいでしょう。 BeautifulSoupはHTMLページをダウンロードし、Seleniumはブラウザをシミュレートするための完全なフレームワークです。私はSelenium/PhantomJSをお勧めしたいと思います。 –
@ErdinErayあなたの提案に感謝します。しかし、BeautifulSoupで可能な方法がありますか?私はInstagramがjavascript主導のウェブプラットフォームであるかどうかは確信していません – Bread
BeautifulSoupの助けではなく、*その* scriptタグの中に入ってみてください。次に、正規表現の助けを借りてあなたが探しているものを見つけますか?しかし、InstagramのようなWebプラットフォームは、Javascriptコードやフロントエンドの情報を保持しません。 InstagramがJSONリクエストを作成する可能性があります。そうであれば、BeautifulSoupの助けによってあなたが望むものを手に入れることはできません。 –