TopGit
Đánh giá repo GitHub

ChangeDetection.io: Công cụ Website Change Detection

dgtlmoon/changedetection.io
CTopGit review image for dgtlmoon/changedetection.io
Review by Topgit.dev for dgtlmoon/changedetection.io, with GitHub repository stats and README context.
Nhận định nhanh

ChangeDetection.io là lựa chọn đúng khi bạn cần biết chính xác thời điểm một trang web cụ thể thay đổi, chứ không chỉ biết rằng nó đã thay đổi. Phần lõi tự triển khai đã có theo dõi URL, lọc diff và thông báo miễn phí mà không cần trả subscription — hơn hẳn một dịch vụ SaaS tương tự một khi bạn quen dùng Docker. Theo dõi trang nặng JavaScript và các tính năng AI mới lại phụ thuộc vào gói trả phí hoặc API key LLM riêng.

Sao
★ 32.8k
Fork
⑂ 1.9k
Ngôn ngữ
Python
Giấy phép
Apache-2.0
Chủ đề
Developer Tools
Cập nhật
Aug 2026
Trang chủ
GitHub

ChangeDetection.io là gì?

ChangeDetection.io là ứng dụng mã nguồn mở, tự triển khai, theo dõi các trang web và JSON API để phát hiện thay đổi rồi báo cho bạn khi nội dung khác lần kiểm tra trước. Trỏ nó vào một URL, đặt chu kỳ kiểm tra, nó sẽ so sánh nội dung mới với snapshot trước đó, áp dụng bộ lọc như CSS selector, XPath, hoặc JSONPath để thu hẹp đúng phần thay đổi. Nó chạy qua Docker, pip, hoặc trên Windows.

Tính năng chính

  • Bộ lọc trigger cho text, XPath 1/2, CSS selector, JSONPath hoặc jq, kèm hỗ trợ regex để khoanh đúng phần trang bạn quan tâm.
  • Chuyển đổi giữa fetcher HTTP nhanh không chạy JS và fetcher dựa trên Chrome (qua Playwright hoặc WebDriver) cho các trang render bằng JavaScript.
  • Browser Steps cho phép viết kịch bản đăng nhập, bấm chấp nhận cookie, điền form trước khi chạy diff.
  • Theo dõi PDF: phát hiện thay đổi nội dung text, cũng như kích thước file và checksum.
  • Chế độ phát hiện giá và hàng về kho trích xuất meta-data sản phẩm và cho phép đặt ngưỡng giá trên/dưới.
  • Thông báo qua thư viện apprise, bao gồm Discord, Slack, Telegram, email, Office365, webhook tùy chỉnh, với tiêu đề và nội dung dùng template Jinja2.
  • Quy tắc AI cho phép bạn mô tả ý định bằng câu tiếng Anh thường — kiểu như chỉ báo khi giá giảm dưới $50 — và kết nối OpenAI, Gemini, Anthropic, Ollama, hoặc bất kỳ endpoint tương thích OpenAI nào qua LiteLLM.
  • Chrome extension cho phép thêm trang hiện tại vào instance của bạn chỉ với một cú click.
Số sao GitHub của repo này thay đổi thế nào theo thời gian. Nguồn: star-history.com.Xem lịch sử sao

Cài đặt ChangeDetection.io

ChangeDetection.io cài nhanh nhất bằng Docker: clone repo rồi chạy docker compose up -d, hoặc chạy độc lập bằng docker run -d --restart always -p 127.0.0.1:5000:5000 -v datastore-volume:/datastore --name changedetection.io dgtlmoon/changedetection.io. Tag :latest là bản ổn định mới nhất, tag :dev bám theo nhánh master đang phát triển. Người dùng Windows có hướng dẫn riêng trên wiki của dự án. Với Python, cài qua pip3 install changedetection.io, rồi chạy changedetection.io -d /path/to/empty/data/dir -p 5000 và mở http://127.0.0.1:5000 để vào giao diện. README ghi rằng bạn có thể chọn fetcher HTTP nhanh có sẵn hoặc fetcher dựa trên Chrome cho từng site.

Theo dõi giá sản phẩm và hàng về kho

  • Theo dõi giá giảm và thông báo hàng về kho trên trang sản phẩm bằng chế độ phát hiện giá và restock.
  • Theo dõi thay đổi trong phản hồi JSON API bằng bộ lọc JSONPath hoặc jq.
  • Nhận thông báo khi nội dung text, kích thước, hoặc checksum của một file PDF thay đổi.
  • Biến các thay đổi trên một trang thành RSS feed để bạn subscribe.
  • Phát hiện website bị deface bằng cách theo dõi mã HTML để tìm thay đổi bất thường.
  • Theo dõi trang thông báo của chính phủ, trường học, hoặc công ty không có mailing list hay RSS feed riêng.

Điểm mạnh

  • Hoàn toàn miễn phí và tự triển khai — không cần trả subscription để dùng bộ tính năng cốt lõi.
  • Bộ máy lọc (XPath, CSS, JSONPath, jq, regex) đủ chi tiết để theo dõi một dòng thông tin cụ thể trên một trang nhiều nội dung.
  • Thiết lập thông báo dùng apprise, nên hầu hết các kênh chat và email chỉ là một chuỗi URL, không cần viết code tích hợp.
  • AI change summaries biến một diff thô thành một câu dễ hiểu, một khi bạn tự cung cấp API key LLM.

Hạn chế cần lưu ý

  • Theo dõi trang render bằng JavaScript cần fetcher Chrome hoặc Playwright, mà README gắn với gói subscription trả phí hoặc bạn phải tự chạy trình duyệt riêng.
  • Tính năng AI gửi nội dung diff ra cho một nhà cung cấp LLM bên thứ ba, nên bạn phải dựa vào chính cảnh báo trong README về việc dữ liệu rời khỏi instance của bạn, và tự trả phí API cho nhà cung cấp đó.
  • Công cụ Visual Selector để chọn phần tử theo kiểu point-and-click chỉ hoạt động khi đã kết nối fetcher Playwright.
  • Chính README ghi rõ phần mềm không có bảo hành, và khi tự triển khai thì việc cập nhật, lưu trữ, uptime đều là trách nhiệm của bạn.

Lựa chọn thay thế cho ChangeDetection.io

Huginn — nền tảng agent tự động hóa tự triển khai, có thể dựng agent để theo dõi trang web và kích hoạt thông báo, dù cần tự cấu hình nhiều hơn để đạt kết quả tương đương.Visualping — dịch vụ theo dõi thay đổi website dạng SaaS, đáng cân nhắc nếu bạn không muốn tự vận hành server.Distill.io — công cụ theo dõi thay đổi trang chạy dạng extension trình duyệt, hướng tới người dùng không muốn tự host bất cứ thứ gì.

Câu hỏi thường gặp

ChangeDetection.io có miễn phí và tự triển khai không?

ChangeDetection.io miễn phí, mã nguồn mở theo giấy phép Apache-2.0, và bạn có thể tự triển khai qua Docker, pip, hoặc trên Windows. Ngoài ra còn có gói subscription trả phí kèm proxy và fetcher mở rộng, dành cho ai không muốn tự vận hành server.

Làm sao để theo dõi một trang web cần render JavaScript?

ChangeDetection.io có thể chuyển một watch từ fetcher HTTP mặc định sang fetcher dựa trên Chrome để chạy JavaScript trước khi kiểm tra thay đổi, dùng WebDriver hoặc Playwright. File docker-compose đi kèm có sẵn dịch vụ sockpuppetbrowser đang comment sẵn để bạn bật fetcher Chrome này ngay trên instance tự triển khai của mình.

ChangeDetection.io có gửi thông báo qua Slack, Discord, hoặc Telegram không?

ChangeDetection.io liệt kê Discord, Email, Slack, Telegram, và webhook tùy chỉnh trong số các kênh thông báo được hỗ trợ, gửi qua thư viện apprise nên phần lớn kênh chỉ là một URL bạn dán vào tab edit của watch, không cần viết code riêng.

ChangeDetection.io có hỗ trợ tóm tắt và lọc bằng AI không?

ChangeDetection.io hỗ trợ quy tắc phát hiện thay đổi bằng AI và tóm tắt thay đổi bằng AI: bạn mô tả ý định bằng câu thường, kiểu như chỉ báo khi giá giảm dưới $50, và AI sẽ đánh giá từng diff theo ý định đó, hoặc biến diff thành một câu ngắn gọn dễ hiểu. Nó kết nối được với OpenAI, Gemini, Anthropic, Ollama, hoặc các endpoint tương thích OpenAI khác qua LiteLLM.

Làm sao để theo dõi một phần tử cụ thể trên trang bằng CSS selector hoặc XPath?

ChangeDetection.io cho phép nhắm vào phần tử cụ thể bằng XPath 1.0 và 2.0, CSS selector, hoặc JSONPath/jq cho nội dung JSON, kèm bộ lọc regex để trigger, loại bỏ, hoặc trích xuất đúng đoạn text cần thiết. Công cụ Visual Selector cho phép chọn phần tử theo kiểu point-and-click khi đã kết nối fetcher Playwright.

Tôi có thể dùng ChangeDetection.io để theo dõi thay đổi trong JSON API không?

ChangeDetection.io theo dõi trực tiếp phản hồi của JSON API, dùng bộ lọc JSONPath hoặc jq để parse, tái cấu trúc và so sánh dữ liệu, thậm chí trích xuất được JSON nhúng bên trong một trang HTML, ví dụ dữ liệu sản phẩm dạng ld+json. Tùy chọn jq được khuyến nghị cho các logic phức tạp hơn như lọc theo giá trị lớn hơn hoặc nhỏ hơn một ngưỡng.

Vấn đề mà nó giải quyết

Phần lớn hướng dẫn 'theo dõi một trang web để phát hiện thay đổi' chỉ là một cron job cộng lệnh diff, và nó gãy ngay khi trang có bất kỳ nhiễu nào: banner quảng cáo đổi liên tục, timestamp, hoặc một chuỗi giá do script sinh ra, nghĩa là bạn phải tự viết scraper riêng cho từng site. ChangeDetection.io tồn tại vì diff thuần túy tạo ra quá nhiều cảnh báo sai để dùng theo dõi giá một sản phẩm hay nội dung chính sách của một trang chính phủ. Một lệnh diff đơn thuần không làm được việc đó. Nó tích hợp sẵn lớp lọc (XPath, CSS selector, JSONPath, jq, ignore/trigger text) mà một script tự viết thường bỏ qua, nên bạn được báo đúng về giá, chứ không phải về banner quảng cáo bên cạnh.

Nên dùng — và nên bỏ qua khi nào

Hãy thử ChangeDetection.io nếu bạn đã quen tự triển khai vài dịch vụ và muốn theo dõi giá một sản phẩm, trang giá của đối thủ, một thông báo của chính phủ, hoặc một JSON API endpoint mà không phải trả phí theo từng URL cho một dịch vụ SaaS. Nó cũng hợp với ai muốn tạo RSS feed từ một trang vốn không có sẵn RSS. Bỏ qua nó nếu bạn muốn một sản phẩm hosted không cần bảo trì ngay từ đầu, không muốn quản lý Docker, cập nhật, hay tự cấu hình thông tin đăng nhập thông báo — hoặc nếu phần lớn những gì bạn cần theo dõi đều nặng JavaScript và bạn chưa sẵn sàng cấu hình fetcher Chrome.

Repo liên quan

Nguồn & ghi công

Thông tin và trích dẫn được lấy từ repository GitHub dgtlmoon/changedetection.io (github.com/dgtlmoon/changedetection.io), bao gồm README, topics, và metadata của repository.

Dữ liệu GitHub · đồng bộ lần cuối 15 thg 8, 2026Đánh giá bởi Henry
Về TopGit

Chưa chắc changedetection.io có hợp với bạn?

Để ChatGPT, Claude hoặc Perplexity tìm hiểu giúp — bấm bên dưới và xem AI nói gì về changedetection.io.

GitHub