Scrapyでデータ取得でクローリングで取得したURLから検索する(Scrapy その2) - 株式会社CoLabMix

Scrapyでデータ取得でクローリングで取得したURLから検索する(Scrapy その2)

前回に引き続きてScrapyでのデータの取得です。

★関連記事
CentOS環境の python3.6(pyenv環境)で Scrapy を利用してみる(Scrapy その1)
CentOS7でscrapy-splashを使ってJavaScriptの解析(Scrapy その3)
Scrapyでデータの保存をmongodbにして見る(Scrapy その4)
CentOS7でscrapy-splashを使ってJavaScriptの解析 その2(Scrapy その5)

前回は「startproject」で作成したプロジェクトからデータを取得していただけでしたので、今回は取得したURLにさらに接続してデータの取得を行います。

クローラーっぽい動きになってきます。

まずは今回から複数のページにアクセスするために一度に大量のアクセスを行わないように、一度接続した後に3秒の時間差を置きます。

 

次に本体となる「spiders/devcolla.py」のファイルを編集します。

 

最初の「parse」のyeildの2番目の引数で、「parse_topics」の関数を呼んでいます。

こちらにURLの引数を渡し、新しいクローリングを発生させています。

これで複数のページにクローリングが実施できます。

外部のサイトなどに飛ばないように「allowed_domains」などで対象のドメインを設定して範囲を絞ったっりします。

今回はこんなところまでで。

 

このブログは株式会社CoLabMixによる技術ブログです。

GCP、AWSなどでのインフラ構築・運用や、クローリング・分析・検索などを主体とした開発を行なっています。

Ruby on RailsやDjango、Pythonなどの開発依頼などお気軽にお声がけください。

開発パートナーを増やしたいという企業と積極的に繋がっていきたいです。

お問い合わせやご依頼・ご相談など

    関連記事

    1. Elasticsearch 6 を使ったデータ検証 その3(bulkで…

    2. CentOS7のPython3でMeCabのmecab-ipadic-…

    3. Django2.1.1 を使ってログインを実装する

    4. AWSのCloudFrontに署名付きURLを使って有効期限付きのWe…

    5. pythonでのElasticsearchのエイリアス(ailias)…

    6. terraform構築手順〜EC2編〜