(八)Shell

1603 ワード

Scrapy端末は、spiderを起動せずにスキップコードを試行およびデバッグするためのインタラクティブな端末です.抽出データをテストするためのコードですが、通常のPython端末として、任意のPythonコードをテストすることができます.
この端末は、XPathまたはCSS式をテストし、彼らの動作方法と、登ったページから抽出されたデータを表示するために使用されます.spiderを作成するとき、端末は式コードをインタラクティブにテストする機能を提供し、変更するたびにspiderを実行する手間を省きます.
Scrapy端末に慣れると、spiderの開発とデバッグに大きな役割を果たすことがわかります.
スタートターミナルshellを使用して、Scrapy端末を起動できます.
scrapy shell 
は、あなたが登るページのアドレスです.
ターミナルの操作
Scrapy端末は普通のPython端末(またはIPython)にすぎない.追加のショートカットが用意されています.
使用可能なショートカットコマンド(shortcut)
  • shelp()-使用可能なオブジェクトおよびショートカットコマンドを印刷するヘルプリスト
  • .
  • fetch(request_or_url)-指定された要求(request)またはURLに従って新しいresponseを取得し、関連オブジェクト
  • を更新する.
  • view(response)-指定されたresponseをネイティブのブラウザで開きます.responseのbodyにtagが追加され、画像やcssなどの外部リンクが正しく表示されます.この操作により、ローカルに一時ファイルが作成され、自動的に削除されません.

  • 使用可能なScrapyオブジェクト
    Scrapy端末は、ダウンロードしたページに基づいて、ResponseオブジェクトやSelectorオブジェクト(HTMLおよびXMLコンテンツ)など、使いやすいオブジェクトを自動的に作成します.
    これらのオブジェクトは次のとおりです.
  • crawler-現在のCrawlerのオブジェクト.
  • spider-URLを処理するspider.現在のURLに対して処理されていないSpiderは、Spiderのオブジェクトです.
  • request-最近取得したページのRequestオブジェクト.このrequestは、replace()を使用して変更できます.または、fetchショートカットを使用して新しいrequestを取得します.
  • response-最近取得したページを含むResponseオブジェクト.
  • sel-最近取得されたresponseに基づいて構築されたSelectorオブジェクト.
  • settings-現在のScrapy settings