ガイド、チュートリアル& インサイト
Shifterチームが提供するレジデンシャルプロキシ、ウェブスクレイピング、データ収集戦略、業界のベストプラクティスについて学ぶ。
レジデンシャルプロキシマネージャーの構築:ローテーション、ヘルスチェック、リトライ
どの出口を使うか、いつそれを引退させるか、どう回復するかを決めるロジックは、一つのコンポーネントにまとめるべきである。ここでは、その設計方法と必要な状態について説明する。
レジデンシャルプロキシで適切なヘッダーとUser-Agentを設定する
クリーンなレジデンシャルIPはドアの前まで連れて行ってくれる。そこを通った後にブラウザらしく見えるかどうかはヘッダーが決め、単一の値よりも一貫性の方が重要になる。
リトライとバックオフ:スクレイパーはいかにして小さな失敗をBANに変えるか
スクレイパーのBANのほとんどは自業自得だ。単純なリトライループは、サイトが速度を落とすよう求めたまさにそのタイミングで、1件のスロットリング応答に対してトラフィックのバーストで応じてしまう。
スクレイピングにヘッドレスブラウザが本当に必要になるのはどんな時か
ヘッドレスブラウザはページを取得する方法の中で最もコストがかかります。ほとんどのサイトではその必要はありません。ここでは、通常のHTTPとフルブラウザのどちらを使うべきか判断する方法を説明します。
厳重に保護されたサイトをスクレイピングする方法:プレーンリクエストからフルステルスまでのエスカレーションラダー
すべてのスクレイピングを最大ステルスで実行する必要はない。労力をターゲットに合わせ、プレーンなクライアントとクリーンなIPから始め、サイトがそれを強制する場合にのみ段階を上げること。
ログインが必要なサイトをスクレイピングする方法:セッション、Cookie、そして大規模なスティッキープロキシ
ログインの背後でのスクレイピングは、ローテーションではなくアイデンティティの問題である。セッションCookieを維持し、各アカウントを1つのクリーンなスティッキーIPに固定し、BANされることなくログイン状態を保つこと。
スクレイパーがページを読み込む前にブロックされる理由:TLSとHTTP/2フィンガープリンティング
クリーンなレジデンシャルIP、本物のUser-Agentなのに、それでも即座にブロックされる?アンチボットはリクエストが読まれる前に、TLSとHTTP/2の層でHTTPクライアントをフィンガープリントしている。
ページネーションと無限スクロールを大規模かつ確実にスクレイピングする方法
ページネーションはスクレイパーが気づかぬうちにデータを失う箇所だ。ページの飛ばし、重複カウント、途中終了などが起こる。すべての項目を一度だけ取得し、完了したことを正しく判定する方法を解説する。
スクレイピングパイプラインの監視: データが壊れる前に異常を教えてくれる指標
スクレイパーは静かに失敗する。cronは動き、ログは200を返し、それでもデータは間違っている。それを役員会議室ではなくパイプラインの中で捉える指標とアラート。