なんか気がつけば2017年8月から始めたBlogも1万アクセスを突破してました。めでたい。 さて、最近はDjangoよりもScrapyに触ってる事が多いです。結構日本語の情報も増えてきましたが、Django等に比べるとまだまだ利用者が少ないのか情報が少ない部分もあります。 このBlogではScrapyにはじめて触れますが、いきなりテストについてメモ代わりにまとめておきます。ScrapyではSpiderというコンポーネントをクロール対象ごとに作成します。このSpiderのテストをどうするかについてです。 サンプルの構成 今回のプロジェクトは以下のような構成です。といってもscrapy startprojectしてdenzowblogというspiderを一つ追加しただけの状態です。 . ├── scrapy.cfg └── testscrapy ├── __init__.py ├── item
Scrapyのユニットテストを書こうとしたところ、ちょっと特殊かつあまり情報がなかったのでまとめました。いつHTMLが変更されてもおかしくないというクローラーの特性上、正当性チェックよりも実装時のcrawl時間を短縮するための利用をメインにするのが吉かなと思います。 (※主にSpiderのユニットテストに関する記事です) (※Pipeline等のテストはunittestなどで普通に書けるため範囲外です) TL;DR; Spiders Contractsを使います 公式のドキュメント docstringに書く scrapy check spidername で実行できる 自分でサブクラスを作り拡張できる ドキュメントにあるサンプルコード def parse(self, response): """ This function parses a sample response. Some co
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く