Anahtar kelime izlemeyi ayarladınız, DevTools'u açtığınızda kelimenin sayfanın HTML'inde durduğunu kelimenin tam anlamıyla görebiliyorsunuz — ancak uyarı hiç tetiklenmiyor. Hiçbir şey bozuk değil. Standart anahtar kelime algılama, bir sayfanın görünür metnini okur: bir insanın ekranda gerçekten okuyabildiği kelimeleri. İzlediğiniz değer gizli bir öğede, bir data- özniteliğinde veya satır içi bir betikte bulunuyorsa, bu gerçek bir veridir ancak görünür metin değildir, bu nedenle sıradan algılama doğrudan yanından geçer.
Çözüm tek bir onay kutusudur. Extfy tarafından geliştirilen Auto Refresh uzantısının Detect Keyword sekmesinde Find monitor text in source seçeneğini etkinleştirin ve anahtar kelime araması, oluşturulan metinden tam HTML kaynağına geçer — gizli öğeler, öznitelikler ve betikler dahil.
in_stock ✕
Kullanıcıyı bilgilendir
Anahtar kelime bulunduğunda/bulunmadığında ses çal
Kaynakta izleme metnini bul
Modern sayfalar, işaretlemelerinde ekranda gösterdiklerinden çok daha fazla bilgi taşır. Önem verdiğiniz anahtar kelime genellikle şu yerlerden birinde bulunur:
display:none veya visibility:hidden ile sarılmış bir durum mesajı.data- öznitelikleri — arayüzü yönlendiren ancak hiçbir zaman metin olarak oluşturulmayan data-availability="in_stock" veya data-status="approved" gibi değerler.<script> bloğunda gönderdiği ve yalnızca daha sonra JavaScript ile oluşturduğu durum nesneleri.title, alt ve aria-label gibi öznitelikler — makineler ve ekran okuyucular tarafından okunabilir, ancak metin eşleştirme tarafından görünmez.Görünür metin algılama, sezginize uyacak şekilde tasarlanmıştır: tarayıcı her şeyi oluşturduktan sonra sayfayı bir insanın yaptığı gibi okur ve yalnızca ekranda gerçekten görünen kelimeleri dikkate alır. Bu, onu hızlı tutar ve sonuçları temiz tutar — bir eşleşme, bir insanın da kelimeyi görebileceği anlamına gelir. Bu tasarımın bedeli bir kör noktadır. Yalnızca işaretlemede bulunan hiçbir şey, tanım gereği görünür metin değildir, bu nedenle algılayıcı ona hiç bakmaz bile. Sayfa, anahtar kelimeniz olarak yazdığınız tam dizeyle dolu olabilir ve algılama dürüstçe “bulunamadı” sonucunu verir, çünkü oluşturulan görünümde gerçekten orada değildir.
in_stock.Alışveriş yapanlara “Stokta yok” gösteren ancak işaretlemesinde zaten data-availability="in_stock" taşıyan bir ürün sayfası düşünün — veri güncellenmiştir, yalnızca arayüz henüz yetişememiştir. Görünür metin algılama eski “Stokta yok” etiketini eşleştirmeye devam eder. Find monitor text in source etkinleştirildiğinde ve anahtar kelime in_stock olarak ayarlandığında, Auto Refresh değişikliği HTML'e geldiği anda fark eder; çoğu zaman görünür sayfa güncellenmeden hemen önce. Aynı yöntem gizli hata bayrakları, yönetim araçlarındaki onay durumları ve bir sayfanın JavaScript ile geç oluşturduğu herhangi bir değer için de çalışır.
in_stock veya status-approved gibi ayırt edici bir dize, stock gibi bir dizeden çok daha güvenlidir.Görünür metin algılama doğru varsayılandır — ta ki izlediğiniz şey aslında hiç oluşturulmayana kadar. Anahtar kelime gizli bir öğede, bir öznitelikte veya bir betikte bulunuyorsa, Detect Keyword sekmesi ve Auto Refresh üzerinde Find monitor text in source özelliğini açın; böylece Auto Refresh sayfayı DevTools'un yaptığı gibi okur ve normal algılamanın sessizce kaçırdığı verileri yakalar.