島根県安来市のフリーランスエンジニア_プログラマー画像1

サイト更新をLINEに自動通知する方法|手動チェックをゼロにした仕組みを解説

特定のサイトに新着情報が出るたびに手動で確認していませんか?この記事では、サイトの更新を自動で検知してLINEに通知するツールを作った話をご紹介します。同じ仕組みを使えば「予約が入ったら通知」「メールが来たら通知」など、あらゆるアクションをLINEで受け取れます。

きっかけ:毎日ページを開いて確認する作業

ある案件サイトの新着情報を逃したくなくて、1日に何度もページを開いて確認していました。でも当然、見ていない間に更新されることが多くて。

「これ、自動でLINEに飛んでくれればいいのに」——そう思ったのが始まりです。

手動チェックの課題

  • ページを開くたびに時間がかかる
  • 見ていない間に更新されて機会を逃す
  • 複数サイトを見ている場合はさらに大変
  • ついつい確認が習慣化してしまう

作ったもの:サイト監視 → LINE通知ツール

仕組みはシンプルです。

1
サイトを定期的にチェック 1分〜5分おきに自動でページを取得
2
前回との差分を検知 新しいコンテンツが追加されたか判定
3
LINEに通知を送信 タイトルとURLをすぐに確認できる形で通知

これだけで、ページを開いて確認する作業がゼロになりました。スマホのLINEに通知が来るので、外出先でもすぐ対応できます。

実装で工夫した2つのポイント

① 初回起動時は通知しない

普通に作ると、スクリプトを起動した瞬間にページ上の既存コンテンツが全件「新着」として通知されてしまいます。今回のケースでは40件が一気に飛んでくることになる。

そこで「初回起動時は既存の案件をすべて記録するだけで通知しない」という処理を入れました。

Python
first_run = len(seen) == 0
if first_run:
    # 今ある案件をすべて記録するだけ、通知はしない
    items = fetch_requests()
    for item in items:
        seen.add(item["id"])
    save_seen(seen)

2回目以降の起動からは、記録にない新しい案件だけを通知します。再起動しても重複通知されません。

② URLではなくIDで重複管理する

URLで管理すると、パラメータの違い(?page=1など)で同じ案件が別物として判定されて二重通知が起きることがあります。

案件のIDだけを抽出して管理することで、この問題を防いでいます。

Python
# URLの末尾の数字(案件ID)だけを取り出す
parts = full_url.rstrip("/").split("/")
request_id = parts[-1]  # 例: "4843212"

# IDが未記録の場合だけ通知
if request_id not in seen:
    send_line(通知メッセージ)
    seen.add(request_id)

シンプルな処理ですが、こういった細かい考慮がツールの安定性につながります。

時間の変化

作業内容 手動 自動化後
サイト確認 1日5〜10回×1分 0分(自動)
情報取得のタイムラグ 最大数時間 最大5分
複数サイトの対応 サイト数×確認時間 変わらず0分
1日の作業時間 10〜30分 ほぼ0分

✓ 複数サイトを同時に監視しても工数は変わらない

1サイトでも10サイトでも、ツールが動いている限り自動でチェックし続けます。

この仕組み、こんな用途にも使えます

「サイト更新の検知」はあくまで一例です。「何かのアクションを検知してLINEに通知する」という仕組みは幅広く応用できます。

📅
予約が入ったら通知

Googleカレンダーや予約フォームと連携

📧
特定のメールが来たら通知

Gmailのキーワード・差出人で条件指定

🛒
注文が入ったら通知

ECサイトの新規注文をリアルタイムで把握

📦
在庫が復活したら通知

欲しい商品の再入荷を自動で検知

💬
フォームに問い合わせが来たら通知

お問い合わせへの対応速度を向上

📊
数値が閾値を超えたら通知

売上・アクセス数などの変化を即把握

費用について

今回の構成でかかる費用はほぼゼロです。

項目費用
LINE Messaging API(月200通まで)無料
Pythonスクリプト無料
自分のPCで動かす場合無料
24時間稼働させたい場合(VPS)月700円〜

まとめ

「何かを検知してLINEに通知する」という仕組みは、一度作ってしまえば応用が効きます。サイト更新、メール、予約、注文——日常の業務の中で「手動で確認している作業」があれば、たいていの場合は自動化できます。

手作業を減らして、本来やるべきことに時間を使いませんか。

業務の自動化、お手伝いします

「この作業、自動化できないかな?」というご相談からでも大丈夫です。
LINE通知連携、サイト監視ツール、各種API連携など、お気軽にどうぞ。

お問い合わせ・ご相談はこちら →

React NativeでJSONキャッシュ問題を解決|外部データ更新が反映されない原因と対処法

WordPressプラグインがWP公式ディレクトリに掲載|画像alt属性を一括管理できる無料ツール