Python 2.7を設定する
リーリーインストール pip を使用して sudo pip install bs4 をインストールします
sudo pip インストールリクエスト
bs4の使い方を簡単に説明するとWebページを巡回するのでfindとfind_allを紹介します
find と find_all の違いは、返されるものが異なることです。 Find は最初に一致したタグとそのタグ内のコンテンツを返します。
find_all はリストを返しますたとえば、find と find_all の違いをテストする test.html を書いてみましょう。内容は:
リーリー
リーリー
test.py のコードは次のとおりです:リーリー
リーリー
実行後、指定したタグを取得すると、両者に大きな違いはなくなり、タグのグループを取得すると、両者の差が表示されます。
私は。 get メソッドを使用して prose.com 上のいくつかのカテゴリの第 2 レベルの Web ページを取得し、グループ テストに合格してすべての Web ページをクロールします
を通じて Web ページに直接アクセスします。
リーリー
コードのこの部分では、200 ではない res.status_code を処理しませんでした。その結果、エラーが表示されず、クロールされたコンテンツが失われるという問題が発生します。そこで Sanwen.net の Web ページを分析したところ、www.sanwen.net/rizhi/&p=1 であることがわかりました
p の最大値は 10 です。最後にディスクをクロールしたときは、そうでした。 100ページは後で分析します。次に、get メソッドを使用して各ページのコンテンツを取得します。各ページの内容を取得後、作成者とタイトルを解析するコードは以下の通りです
リーリー
タイトルを取得するときに不正行為がありました。散文を書くときにタイトルにスラッシュを追加するのはなぜですか?正規表現を変更してください。
最後のステップは、各ページの分析を通じて記事のアドレスを取得し、最初は Web ページのアドレスを変更してコンテンツを 1 つずつ取得することです。トラブル。
リーリー
最後のステップはファイルを書き込んで保存することです
リーリー
Prose.com から散文を取得するには 3 つの関数が使用されますが、問題は、一部の散文が約 400 件しか取得できない理由がわからないことです。 Prose.com ですが、ページごとに同じことがわかりました。誰かがこの問題を解決してくれることを願っています。もちろん、それは私の寮のネットワークが壊れていることと関係があると思います
。リーリー
レンダリングのことをほとんど忘れていました
以上がPython を使用して散文 Web サイトから記事をクロールするの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。