ウェブトラッカー
このリポジトリには、アプリのフロントエンドとコントローラーが含まれています
あらゆる Web サイトを追跡し、Web サイトに変更があった場合に通知するシンプルなツールです。
使用されているテクノロジー:
- Node.js/JS: 最初の Web サイト スクラッパー (Azure でホスト) を実行するために Puppeteer とともに使用されます。
- C#: 変更を検出するために毎分実行される時間指定された Azure 関数と、バックエンドのメイン コントローラーに使用されます。
- MongoDB: すべての Web サイトと電子メールのデータを保存するために使用されます。
- ASP.Net MVC、HTML、CSS、JS: Web サイトのフロントエンドの作成に使用されます。
- 当初はクラウド上の Linux 仮想マシンにデプロイされていました
その他の関連リポジトリ (懸念事項の分離を実装するためにマイクロサービス アーキテクチャを使用):
- 初期スクレイピングを行う関数: これは、追跡リクエストが送信されると実行され、Web サイトをスクレイピングし、そのデータを MongoDB に保存します。
- 時間トリガー機能: この機能は毎分実行され、データベース内のすべての Web サイトで別のスクレイピングを実行し、Web サイトのコンテンツが変更されたときにシグナルを送信します。
ローカルで実行する方法:
残念ながら、コスト上の理由から、クラウド上での Azure 関数の実行を停止することにしましたが、引き続きローカルで実行できます。
- このリポジトリのクローンをローカル マシンに作成し、ターミナルを使用して「WebTrackerCoreUI/WebTrackerCoreUI」に移動し、次を実行します。
ドットネットラン
- ブラウザで https://localhost:5001 を開き、安全上の懸念は無視してください (信じてください)
- Clone 初期スクレイピングを行う機能
- 別の端末から trackerAutomation に移動し、次を実行します。
npmインストール
npm 開始
- 後でターミナルで取得した URL が必要になります
- 時間トリガー機能のクローン作成
- 3 番目の端末から webTrackerContinuouswebTrackerContinuous に移動します
- お気に入りのテキスト エディターで webTrackerContinuouswebTrackerContinuousFunction1.cs を編集し、次のように更新します。
- メール送信者のメールアドレスとパス
- ステップ 5 の Azure func リンク
- 保存後、webTrackerContinuouswebTrackerContinuous で次のコマンドを実行します。
機能開始
- お気に入りのテキスト エディターで WebTrackerCoreUIQueueAppProgram.cs を編集し、次のように更新します。
- ステップ 2 で開いた https://localhost:5001 タブに戻ると、すべてが期待どおりに動作するはずです。