AWSのLambdaでScrapyを動かす その2 - S3からの値の取得 - 株式会社CoLabMix

AWSのLambdaでScrapyを動かす その2 - S3からの値の取得 –

前回ではAWS LambdaでScrapyを動かす設定を行いました。

★関連記事
AWSのLambdaでScrapyを動かす その1

前回の記事の設定の中ではトリガーなどと実際のクローリングに関連性はありませんでした。

今回は「S3にアップロードしたファイルにクローリングのURLを含める」という動作を行います。

 

クローリング処理

基本的な設定は前回のままです。

今回、S3にアップロードするファイルは以下のようになります。

 

Lambdaにアップロードするデプロイパッケージの「lambda_function.py」は以下のようにします。

S3のファイルをCSVで読み込み「start_urls」という配列にURLを入れています。

ポイントはプロセスで起動しているScrapyに対して「start_urls=start_urls」という引数で値を渡していることです。

Class内の「start_urls = []」は値が初期化されてしまうので外しておきます。

 

こちらでトリガーを起動させます。

 

こちらでLambdaが起動されるとCloudWatchでログが確認できます。

 

Webサーバ側のログは以下のように出ていました。

一度の起動ですので接続元のIPは同じになるようです。

こちらでかなり幅を持たせたLambdaでのクローラーを作ることができるようになりました。

 

★関連記事
AWSのLambdaでScrapyを動かす その1
AWSのLambdaでScrapyを動かす その3 - dynamodbからの取得・保存 –

 

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

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

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

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

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

関連記事

  1. DjangoでWebアプリケーションを作成してみる その2(ubunt…

  2. Elasticsearch 6 を使ったデータ検証 その5( クエリ …

  3. Elasticsearch 6 を使ったデータ検証 その2(マッピング…

  4. さくらVPS の CentOS7 サーバに Elasticsearch…

  5. AWS CLIのインストールについて(Ubuntu 16.04.4)

  6. CentOS7にZABBIXサーバのインストール