webbrowser modülünü kullanarak https://web.whatsapp.com/'u açmayı, sonrasında ise sitenin yüklenip yüklenmediğini konrol etmek istiyorum.
Mesela şöyle bir şey düşünüyorum:
import webbrowser
LINK = "https://web.whatsapp.com/"
webbrowser.open(LINK)
if is_page_loaded(LINK):
print("The page has been loaded")
Site browser’ımda açıldığında aktifse bir şeyler print edilecek.
“Aktif” derken neyi kastettiğimden bahsedeyim: Whatsapp web’i açtığınızda eğer telefonunuz whatsapp web ile senkronize değilse ya da telefonun WIFI’yı kapalıysa site pasif, senkronizeyse ve WIFI açıksa aktif demek oluyor.
Whatsapp web’in aktif ya da pasif olduğunu nasıl anlarım ?
Selenium kullanmadan anlayamazsın diye düşünüyorum. Çünkü web WhatsApp qr kod okutmasan bile status codu 200 dönüyo. Yani açık zaten ama senin WhatsApp ın açık olduğunu seleniumsuz anlaşılmaz gibi geliyor bana.
Router üzerinden gelen mesajı yakalarsan yapabilirsin ama python’da nasıl yapılıyor hiçbir fikrim yok. @BandoLero dediği doğru yüksek ihtimalle. Benim aklıma başka bir şey gelmiyor.
Sunucu ile Bilgisayar arası gelen verinin tamamlanması sağlanıyor en sonda. O veriyi yakalamanın bir yolu varsa eğer yapılabilir. C ile yazılmış bir dil olduğu için söyledim. Beyin fırtınası yapıyoz
O kadar uzun yollara ihtiyac yok. Basitce Selenium kullanarak whatsapp web yuklenmesi tamamlandiginda ekranda beliren bir elementin varligi kontrol edilebilir. En kotu ihtimal (yapilabiliyor mu bilmiyorum ama) bir input fokus moduna gectiginde selenium bunu tespit edebiliyorsa o sekilde de olur.
Gittiğimi de kim söylemiş ? Sorun, sorunu Forum’da paylaşmamdan üç (?) gün öncesinden beri vardı ve o zamandan beri çözmeye çalışıyorum. Konu içerisinde herhangi bir aktivite yapmamış olmam gittiğim anlamına gelmez.
Firefox kullanıyorum, çalıştırdığımda Geckodriver hatası verdi. Geckodriver’ı kurup denediğimde gerçekten de whatsapp web’i açtı fakat QR kod istiyordu. Okuttum, browser’ı kapatıp kodları tekrar çalıştırdım ve browser tekrar açıldığında yine QR kod istiyordu. Sonrası sonsuz döngü
İşte tam da bu gibi sebeplerden dolayı Selenium’a en baştan bulaşmak istemedim fakat bir sürü yol deneyip sorunu olduramayınca Selenium’a kaldım
Selenium alternatifi arayıp requests ve beautifulsoup kullandım fakat iğrenç bir şey keşfettim: Whatsapp-Web hazretleri requestlere cevap vermiyormuş, redirect hatası yükseliyor her seferinde.
Seleniumsuz yapan yok. Google’da baya kapsamlı bir arama yaptım ama hepsi de selenium kullanıyor.
çekmesi gerekiyor her saniye. Çünkü hep bir işlem halinde oluyor web sitesi. Senin yapacağın işlemi fark ettiren herhangi bir event olayı yok galiba(Aklıma Enter’a basınca event çalıştırsın mantığı falan geldi. döngüyü durduruyoruz enter’a basınca 2 saniye çalışıyor sonra yine kapanıyor). Ondan dolayı delaylamak zorunda kalıyoruz ve döngüye sokuyoruz.
Araştırdığım kadarıyla bunları bulabildim. Size iyi çalışmalar.