[Scrapyチュートリアル]3Spiderファイルの作成
Spiderファイルの作成
Spiderは클래스
であり、ユーザ定義であり、Scrapyはウェブサイト(またはウェブサイトグループ)から情報をキャプチャするために使用される.スパイを継承する方法、初期要求を定義する方法、ページリンクに選択的に従う方法、およびparse
でダウンロードしたページコンテンツを定義する方法を定義する必要があります.
チュートリアルに基づいてquotes.toscrape.com
を作成します.
クモファイルを作成しましょう.
スクリプトアイテムを作成するときに、自動生成された
spiders
フォルダにquotes_spider.py
ファイルを作成します.(.py
ファイル名は自由に設定できます.)チュートリアルで提供される一般的な金.基本骨格と考えればいい
import scrapy
class QuotesSpider(scrapy.Spider):
name = "quotes"
def start_requests(self):
urls = [
'http://quotes.toscrape.com/page/1/',
'http://quotes.toscrape.com/page/2/',
]
for url in urls:
yield scrapy.Request(url=url, callback=self.parse)
def parse(self, response):
page = response.url.split("/")[-2]
filename = f'quotes-{page}.html'
with open(filename, 'wb') as f:
f.write(response.body)
self.log(f'Saved file {filename}')
ご覧のように、スパイダーマンはscrapy.Spider
を継承しています.クモといくつかの特性と方法を定義します.name
:クモを識別します.プロジェクト内で唯一でなければなりません.つまり、他のクモに同じ名前を設定することはできません.start_requests()
:スパイは、ブラウズを開始するリクエストのリストを返すか、ジェネレータ関数に書き込むことができるテーブルフォーマットのリクエストを返す必要があります.これらの初期要求のうち、その後の要求は연속적으로 생성
である.parse()
:各要求に対して다운로드된 응답을 처리
を呼び出す方法.responseパラメータは、ページコンテンツを含むTextResponse
の例であり、ページコンテンツの処理に役立つ.parse()
メソッドは、通常、parse
に応答を送信し、コマンドからデータを抽出し、従うべき新しいURLを検索して新しい要求を作成する(Request
).Reference
この問題について([Scrapyチュートリアル]3Spiderファイルの作成), 我々は、より多くの情報をここで見つけました https://velog.io/@create_addict/Scrapy-튜토리얼-3.-Spider파일-생성テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol