پیدا کردن بهترین پیشنهادها یکی از جذابیتهای خرید اینترنتی است، اما معمولاً باید کاهش قیمت، تخفیفها و دیگر تغییرات را دستی بررسی کنید. وقتی هم مدتها منتظر موجود شدن کالایی هستید، همین ماجرا تکرار میشود؛ تا بفهمید کالا دوباره موجود شده، ممکن است بار دیگر با همان پیام دلهرهآور «ناموجود» روبهرو شوید.
تازگی با ابزار خودمیزبان فوقالعادهای آشنا شدم که مرا از این بررسیهای دستی بینیاز کرده است. حالا کانتینر داکری که راه انداختهام همهچیز را بهجای من زیر نظر میگیرد و هرگاه قیمت محصولی کاهش یابد، دوباره موجود شود یا تغییر مهم دیگری رخ دهد، خبرم میکند. از وقتی changedetection.io را راهاندازی کردهام، هم در وقت صرفهجویی کردهام و هم در هزینه.
چنجدیتکشن داتآیاو دقیقاً چیست؟
یک کانتینر داکر در برابر بینهایت تازهسازی

Changedetection.io سامانهای برای پایش صفحههای وب است که میتوانید با Docker آن را روی سرور خودتان میزبانی کنید. این سامانهٔ متنباز نشانی صفحهٔ وب انتخابی را مرتب بررسی میکند، تغییرات را تشخیص میدهد و با رخ دادن تغییری مشخص، به کاربر هشدار میفرستد. سازوکارش ساده است: کانتینر Docker را در پسزمینه اجرا میکنید و هرگاه قیمت محصولی کاهش یابد یا دوباره موجود شود، اعلان میگیرید.
برخلاف دیگر ابزارها و افزونههای تشخیص تغییرات وبسایت، changedetection.io میتواند تغییرات پیشرفتهتری را هم شناسایی کند؛ از موجود شدن دوباره و کاهش قیمت گرفته تا تغییر در سندهای PDF، پاسخهای JSON API و حتی نمایان شدن کلیدواژهها. همین تواناییها باعث شده است changedetection.io میان علاقهمندان خرید اینترنتی محبوبیت فراوانی پیدا کند.
این ابزار رایگان قابلیتهای متعددی نیز دارد که آن را از یک خبرخوان معمولی RSS متمایز میکند. برای نمونه، میتوانید تعیین کنید سامانه در جستوجوی چه نوع تغییراتی باشد و اعلانها را از چه راهی دریافت کنید. حتی میتوان ابزاری مبتنی بر هوش مصنوعی را به آن افزود تا همهٔ تغییرات را به زبانی ساده و روشن خلاصه کند. با وجود تمام این امکانات، میزبانی شخصی این ابزار بسیار آسان بود.
راهاندازی آن فقط ده دقیقه زمان برد
Docker compose up, and I was already watching pages





من در میزبانی شخصی خبره نیستم، اما راهاندازی changedetection.io با Docker بهسادگی انجام شد. پس از شبیهسازی مخزن، فقط کافی بود فرمان سادهٔ «docker compose up» را اجرا کنم تا ابزار به کار بیفتد. پیش از نصب قابلیتهای تکمیلی، مانند بهروزرسانیهای مبتنی بر هوش مصنوعی، نخست گزینههای پایهٔ تشخیص تغییرات وبسایت و موجود شدن دوباره را آزمودم. بد نیست بدانید نسخهٔ خودمیزبان برنامه به حساب کاربری هم نیاز ندارد و بهمحض باز کردن صفحهٔ localhost شروع به کار میکند.
ساخت یک نمونهٔ تشخیص تغییر با changedetection.io بسیار ساده است. روی دکمهٔ «جدید» کلیک کنید و نشانی صفحهٔ وبی را که میخواهید زیر نظر بگیرید، بچسبانید. در همین رابط میتوانید مشخص کنید که محتوای HTML صفحه پایش شود یا برای یک پروژهٔ مشخص از گزینههای پیشرفته بهره بگیرید. برای گزینههای پیشرفته، بهویژه هنگامی که میخواهید مؤلفهای مشخص از صفحه را رصد کنید، امکان انتخاب میان مرورگرهای موجود را هم دارید. شیوهٔ پردازش این درخواستها نیز قابل تنظیم است.
همچنین متوجه شدهام که changedetection.io آنقدر هوشمند هست که نوع مناسب پایش را پیشنهاد کند. برای نمونه، وقتی صفحهٔ محصول یک دوربین Fujifilm را برای پایش متنی افزودم، چون صفحه به یک محصول مشخص مربوط بود، از من پرسید آیا میخواهم آن را به پایش موجودی تبدیل کنم. نسخهٔ خودمیزبان ابزار نیز شمار محصولات یا صفحههای قابل پایش را محدود نمیکند. به همین دلیل، بهتر است از امکانات ساماندهی مانند برچسبها و گروهها و شاید یکپارچهسازی با هوش مصنوعی بهره بگیرید.
گزینشگر دیداری مرا شیفتهٔ این ابزار کرد
برای نتیجهٔ بهتر، هوش مصنوعی را هم به کار بگیرید






هرچند هشدارهای اصلی مربوط به موجودی و قیمت بسیار دقیقاند، گاهی برای بعضی صفحههای وب به پایش پیشرفتهتری نیاز دارید. برای نمونه، شاید بخواهید از تغییر تاریخی مشخص در یک وبسایت دولتی باخبر شوید. برای خود من پیش آمده است که بخواهم هنگام خالی شدن برخی موقعیتها اعلان بگیرم. مقایسهٔ متنی با changedetector.io ممکن است در چنین مواردی چندان کارآمد نباشد؛ درست همینجاست که قابلیت Visual Selector یا «گزینشگر دیداری» آن به کارم میآید. هنگام ساخت یک پایش، با این قابلیت میتوانم مؤلفهای مشخص از صفحهٔ وب را هدف بگیرم.
فرض کنید میخواهم بدانم مهلت ثبت درخواست در صفحهای چه زمانی تغییر میکند یا محتوای پایین صفحه چه وقت عوض میشود. شاید هم بخواهم بهمحض موجود شدن گونهای مشخص از یک محصول باخبر شوم. چنین اطلاعاتی را عملاً نمیتوان از مقایسهٔ متنی به دست آورد، اما Visual Selector این کار را بیدردسر میکند.
به یاد داشته باشید که برای برخوردار شدن changedetection.io از قابلیت ثبت تصویر صفحه، باید مؤلفهٔ دیگری به نام Playwright را نصب کنید. تا پیش از نصب آن، امکان استفاده از قابلیت Visual Selector را نخواهید داشت.
اگر ترجیح میدهید شرحها و گزارش تغییرات را بهصورت متن ساده دریافت کنید، بهتر است یک سامانهٔ هوش مصنوعی یا مدل زبانی بزرگ را با این ابزار یکپارچه کنید. گزینههای فراوانی پیش رو دارید، زیرا میتوانید کلیدهای API چندین ارائهدهنده را وارد کنید و changedetection.io بیدردسر کارش را انجام میدهد. اگر میخواهید شمار زیادی صفحه را زیر نظر بگیرید و درکی ساختاریافته از همهٔ تغییرات داشته باشید، قابلیتهای هوش مصنوعی به کارتان میآیند. یکپارچهسازی هوش مصنوعی همچنین اجازه میدهد دستورهایتان را به زبان طبیعی بنویسید؛ برای نمونه: «فقط هنگامی به من خبر بده که قیمت کاهش یافت.»
بد نیست بدانید که changedetection.io پروژهای بسیار گسترده است و قابلیتهایش به آنچه اینجا دربارهاش نوشتهام محدود نمیشود. برای نمونه، میتوان سرورهای ثبت محتوا یا پراکسی راهاندازی کرد یا حتی برای دستیابی به نتایج بهتر، چندین API را به کار گرفت. شیوه و محل دریافت اعلانها نیز قابل شخصیسازی است؛ بنابراین اگر آمادهاید کمی برای تنظیم آن وقت بگذارید، این کانتینر Docker واقعاً از پس کار برمیآید.
جاهایی که changedetection.io هنوز مرا به دردسر میاندازد
با اینکه امکانات changedetection.io را بسیار دوست دارم، گاهی هم ناامیدم میکند. برای نمونه، اگر صفحهای وب دارای CAPTCHA یا گونهای دیگر از راستیآزمایی مرورگرمحور باشد، ابزار تشخیص تغییرات کار نمیکند؛ مشکلی که در چندین صفحه با آن روبهرو شدهام. همانطور که پیشتر گفتم، برای دسترسی به قابلیتهای بیشتری مانند «بازرس دیداری» باید کانتینر دیگری نصب کنید که هزینهٔ زیرساختی جداگانهای به همراه دارد. بااینحال، آنچه اهمیت دارد میزان اختیاری است که برای پیگیری قیمت و موجودشدن دوبارهٔ کالاها به دست میآورید. برای من بسیار خوشایند است که دیگر لازم نیست در ساعتهای نامعمول وبسایتها را بررسی کنم تا ببینم کالا چه زمانی موجود میشود؛ کافی است این ابزار را راهاندازی کنم و پس از دریافت اعلان دست به کار شوم.
منبع: این مطلب ترجمه و بومیسازی مقالهای از MakeUseOf به قلم Abhijith N Arjunan است. مشاهده مقاله اصلی