7

スクレイピングの前に、Docker localhost:8050 で実行されるスプラッシュを使用して JavaScript をレンダリングするスクレイピー スパイダーがあります。これをherokuで実行しようとしていますが、ウェブを実行する前にドッカーを起動してスプラッシュを実行するようにherokuを構成する方法がわかりません: どんなガイドでも大歓迎です!

4

2 に答える 2

6

私が収集したものから、あなたが期待していること:

  • Docker コンテナーを介して Heroku で実行されるスプラッシュ インスタンス
  • Heroku dyno で実行されている Web アプリケーション (Scrapy スパイダー)

スプラッシュ インスタンス

  • dockerCLI とherokuCLI をインストールできることを確認します
  • Heroku のContainer Registry - Pushing existing image(s)に見られるように:
    • dockerCLI とherokuCLI がインストールされていることを確認する
    • heroku container:login
    • docker tag scrapinghub/splash registry.heroku.com/<app-name>/web
    • docker push registry.heroku.com/<app-name>/web
    • アプリケーションをテストするには: heroku open -a <app-name>. これにより、このアプリ名の Heroku ホストのポート 8050 で Splash UI を表示できるようになります。

Dyno Scrapy Web アプリの実行

  • を指すようにアプリケーションを構成します<app-host-name>:8050。そして、Scrapy スパイダーは、以前に実行された Splash インスタンスにリクエストできるようになりました。
于 2017-09-06T06:20:24.307 に答える