Web ページにレンダリングされたデータの一部を抽出しようとしています。以下のコードを使用して、ページからデータ全体を取得し、テキスト ファイル (RAW) に保存することができます。
curl http://webpage -o "raw.txt"
他の選択肢や利点がまったくないかどうか疑問に思っています.
Web ページにレンダリングされたデータの一部を抽出しようとしています。以下のコードを使用して、ページからデータ全体を取得し、テキスト ファイル (RAW) に保存することができます。
curl http://webpage -o "raw.txt"
他の選択肢や利点がまったくないかどうか疑問に思っています.
requestsとBeautifulSoupを組み合わせて使用します。
from bs4 import BeautifulSoup
import requests
session = requests.session()
req = session.get('http://stackoverflow.com/questions/10807081/script-to-extract-data-from-wbpage')
doc = BeautifulSoup(req.content)
print(doc.findAll('a', { "class" : "gp-share" }))
cURL は良いスタートです。より良いコマンド ラインは次のようになります。
curl -A "Mozilla/5.0" -L -k -b /tmp/c -c /tmp/c -s http://url.tld
Cookie、ユーザーエージェント、SSL証明書などを扱うためです。
見るman curl
単一の Web リソースを保存/処理する:上記のアプローチは、単一のファイル/Web リソースに適しています。また、事前設定されたパターンに基づいて正規表現をパイプし、データをチョップ/スキップすることもできます。例: すべてのタグ ソース URL を保存します。
ディレクトリ全体または Web サイトを再帰的に保存/処理する: Python または Perl スクリプトを使用して、ページまたは Web サイトの dns 名に属するすべてのリンクとリソースを繰り返し取得できます。Python では、http lib を使用して、タグを再帰的に解析します (深さの制限があることを確認してください。または、大規模な Web サイトでは、大量のデータを保存することになる可能性があります!)。簡単で安全な賭けはBeautiful Soupです。これは、Web データをスクラップし、ナビゲートし、リモート Web リソースの解析ツリーを検索できる Python ライブラリです。また、解析されたローカル コンテンツなどを変更することもできます。
サンプル コードは、Web ページからすべてのデータを取得します。Web ページを解析して特定の情報を抽出したい場合は、既存のパーサーを使用することをお勧めします。
私は通常、html ページからデータを抽出するためにBeautifulSoupを使用します。