June 2025
Intermediate to advanced
356 pages
5h 13m
Japanese
Webスクレイピングを行っていると最初に出てくる質問のひとつが「ログインが必要なページから情報をクローリングするにはどうすればいいのか?」というものです。Webはソーシャルメディア、ユーザーコンテンツなどのインタラクションを増やしていく傾向にあります。フォームとログインは、これらのタイプのサイトに不可欠な要素であり、避けることはほとんどできません。幸いなことに、比較的簡単にフォームやログインを扱うことができます。
これまでスクレイパーの例におけるWebサーバーへのリクエストはHTTP GETメソッドを使って情報(レスポンス)を取得していました。本章ではHTTP POSTメソッドに焦点を当て、情報(リクエストボディ)をWebサーバーにリクエストして得られた情報(レスポンス)を保存して分析します。
基本的にフォームは、Webサーバーが理解できる形のPOSTリクエストを送信する方法をユーザーに提供しています。Webサイトのリンクタグ(aタグ)がGETリクエストを行うのを助けるように、フォーム(formタグ)はPOSTリクエストを行うのを助けてくれます。もちろん、少しコードを書けば、これらのリクエストを自分で作成してスクレイパーを使って送信することもできます。
Webフォームの操作をPythonコアライブラリだけを使って行うことも可能ですが、ちょっとした工夫によってコードがより簡潔に書けます。Python標準ライブラリに含まれているurllibを使って基本的なGETリクエストより複雑なことを行おうとしているときに、標準ライブラリに含まれていないライブラリに注目するとより良いものを見つけられるでしょう。
Read now
Unlock full access