ホームページ >バックエンド開発 >Python チュートリアル >Scrapy シェルを使用して xpath 選択の結果を確認する方法に関する詳細なチュートリアル
1.scrapy シェル
は、scrapy パッケージの優れた対話型ツールです。現在、私は主に xpath の選択結果を確認するために使用しています。 Scrapy をインストールすると、cmd 上で直接 Scrapy シェルを操作できるようになります。
Scrapy Shell
Scrapy ターミナルは、スパイダーを起動せずにコードを試してデバッグすることができ、XPath 式や CSS 式がどのように機能するかをテストすることもできるため、Web ページのクロールが容易になります。から抽出されたデータ。
IPython がインストールされている場合、Scrapy ターミナルは (標準の Python ターミナルの代わりに) IPython を使用します。 IPython ターミナルは他のターミナルよりも強力で、インテリジェントなオートコンプリート、強調表示された出力、その他の機能を提供します。 (IPythonのインストールを推奨します)
Scrapy Shellを起動します
プロジェクトのルートディレクトリに入り、以下のコマンドを実行してシェルを起動します:
scrapy Shell "http://www.itcast.cn/channel/Teacher .shtml"
Scrapy Shell は、ダウンロードしたページに基づいて、Response オブジェクトや Selector オブジェクト (HTML および XML コンテンツ用) などの便利なオブジェクトを自動的に作成します。
シェルがロードされると、応答データを含むローカル応答変数を取得します。応答本文を出力するには、response.body を入力し、応答ヘッダーを表示するには、response.headers を入力します。
response.selectorと入力すると、responseによって初期化されたクラスSelectorのオブジェクトが取得されます。このとき、response.selector.xpath()またはresponse.selector.css()を使用してレスポンスをクエリできます。
Scrapy は、(前のケースと同様に) 有効にすることができる、response.xpath() や response.css() などのいくつかのショートカットも提供します。
セレクター
Scrapy Selectors には XPath および CSS セレクター式メカニズムが組み込まれています
Selector には 4 つの基本的なメソッドがあり、最も一般的に使用されるのは xpath です:
xpath(): xpath 式を渡し、式を返します。対応するすべてのノードのリスト
extract(): ノードを Unicode 文字列にシリアル化し、リストを返します
css(): CSS 式を渡し、式に対応するすべてのノードのセレクター リストを返します。構文は次のとおりです。 BeautifulSoup4
re()と同じ: 受信した正規表現に従ってデータを抽出し、Unicode文字列リストを返します
2. ipython
公式ではipythonを使用することをお勧めしますwebsite スクレイピーシェルを実行するのでインストールしてみました。私の Python 環境は以前 conda を介して構成されていたため (前の記事を参照)、conda を介して ipython をインストールすると非常に便利です
conda install -c conda-forge ipython
そうすれば、ipython パッケージ全体がダウンロードされます。すべてコンパイルされているため、煩わしいコンパイルは必要ありませんプロセスが失敗しました。
3. ipython と ipython 上で Scrapy シェルを実行します
現在の cmd 実行ボックスでは、システム環境が構成されているため、Python パッケージを直接実行できます。そのため、cmd 実行ボックスに直接次のように入力します。 ipython を ipython に入力すると、ipython 実行ボックスに入ります。これはシステム標準の cmd に似ていますが、より豊富な機能、豊富な色、より優れたレイアウトを備えています。
しかし、scrapy シェルコマンドを直接入力すると、そのようなコマンドは存在しないと表示され続けて失敗します。ここで立ち往生しました。
後で、scrapy シェルの説明を注意深く読んでください
IPython がインストールされている場合、Scrapy シェルは (標準の Python コンソールの代わりに) それを使用します
つまり、scrapy シェルは ipython を見つけます。フレーム自体で実行されます。
そのため、cmd の標準の実行ボックスに直接、scrapy shell
以上がScrapy シェルを使用して xpath 選択の結果を確認する方法に関する詳細なチュートリアルの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。