Selenium Winform

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    AsayisciAsayisci
    Asayisci
    Asayisci's avatar
    Kayıt Tarihi: 14/Eylül/2009
    Erkek

    Merhaba arkadaşlar.

    saybirs mürid sayesinde Selenium ile tanıştım. Bu arada html parsing işlemi yapıyordum. 

    neyse konumuz bu değil. mesele şu ki selenium kullanırken program ayrı bir pencere açarak (chrome,firefox etc) ayrı bir program gibi davranıyor.

    benim istediğim ise tek pencere altında bir winform içerisine selenium browser'i gömmek. bu ne kadar mümkün? yardımcı olursanız sevinirim.

    bu mümkün değilse selenium browser'i görünmeden arka planda çalıştırmak mümkün mü buda ikinci çözüm.

    lakin ilki olursa benim için tadından yenmez.

  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    yolbulucu
    yolbulucu's avatar
    Kayıt Tarihi: 06/Nisan/2007
    Homo

    http://phantomjs.org/

    phantomjs ye bakabilirsin.

    https://www.nrecosite.com/phantomjs_wrapper_net.aspx

     

    yolbulucu tarafından 23/Nis/19 21:41 tarihinde düzenlenmiştir

    29.99cm, titanyum kaplamalı, çift damarlı, su ve yağ soğutmalı.
  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    end
    end's avatar
    Kayıt Tarihi: 16/Ekim/2016
    Erkek

    headless mode diye arat hocam :')


    0x0480 takilin madem ﷽﷽﷽
  4. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Https
    Https's avatar
    Kayıt Tarihi: 05/Ağustos/2017
    Erkek

    Pythonda çok hoş kütüphaneler var.

    Yine çoğu dilde web scraping/crawling işini yapan basit kütüphaneler vardır ama bence pythonun eline kimse su dökemez.

  5. KısayolKısayol reportŞikayet pmÖzel Mesaj
    NoktaliVirgul
    NoktaliVirgul's avatar
    Kayıt Tarihi: 02/Temmuz/2007
    Erkek

    Geçen ilk defa kullandım. Headless Mode yaparsan ekrana birsey çıkmıyor. 

    ----

    Python için şu şekilde kullanıyorum, mutluyum. "Headless modda windows-size vermene gerek yok" diyecekler çıkmazsa sevinirim :) 

    from selenium import webdriver
    from selenium.webdriver.chrome.options import Options
    chrome_options = Options()
    chrome_options.add_argument("--headless")
    chrome_options.add_argument("--window-size=415,700")
    browser = webdriver.Chrome(chrome_options=chrome_options, executable_path='chromedriver.exe')

    NoktaliVirgul tarafından 24/Nis/19 09:59 tarihinde düzenlenmiştir

    If my calculations are correct, when this baby hits eighty-eight miles per hour... you"re gonna see some serious shit.
  6. KısayolKısayol reportŞikayet pmÖzel Mesaj
    AsayisciAsayisci
    Asayisci
    Asayisci's avatar
    Kayıt Tarihi: 14/Eylül/2009
    Erkek

    python bilmiyorum. Şuan öğrenecek vaktim yok :)

    Bana c# lazım 😊 

  7. KısayolKısayol reportŞikayet pmÖzel Mesaj
    end
    end's avatar
    Kayıt Tarihi: 16/Ekim/2016
    Erkek
    NoktaliVirgul bunu yazdı

    Geçen ilk defa kullandım. Headless Mode yaparsan ekrana birsey çıkmıyor. 

    ----

    Python için şu şekilde kullanıyorum, mutluyum. "Headless modda windows-size vermene gerek yok" diyecekler çıkmazsa sevinirim :) 

    from selenium import webdriver
    from selenium.webdriver.chrome.options import Options
    chrome_options = Options()
    chrome_options.add_argument("--headless")
    chrome_options.add_argument("--window-size=415,700")
    browser = webdriver.Chrome(chrome_options=chrome_options, executable_path='chromedriver.exe')

    curl ya da benzeri guiless web request teknolojilerine kiyasla ne kadar verimli hocam bu?

    saniyede 1000 req cikartmaya kalksak ram yamulur mu dersin


    0x0480 takilin madem ﷽﷽﷽
  8. KısayolKısayol reportŞikayet pmÖzel Mesaj
    NoktaliVirgul
    NoktaliVirgul's avatar
    Kayıt Tarihi: 02/Temmuz/2007
    Erkek
    end bunu yazdı
    NoktaliVirgul bunu yazdı

    Geçen ilk defa kullandım. Headless Mode yaparsan ekrana birsey çıkmıyor. 

    ----

    Python için şu şekilde kullanıyorum, mutluyum. "Headless modda windows-size vermene gerek yok" diyecekler çıkmazsa sevinirim :) 

    from selenium import webdriver
    from selenium.webdriver.chrome.options import Options
    chrome_options = Options()
    chrome_options.add_argument("--headless")
    chrome_options.add_argument("--window-size=415,700")
    browser = webdriver.Chrome(chrome_options=chrome_options, executable_path='chromedriver.exe')

    curl ya da benzeri guiless web request teknolojilerine kiyasla ne kadar verimli hocam bu?

    saniyede 1000 req cikartmaya kalksak ram yamulur mu dersin

    Dediği gibi kısa python hayatımda ilk defa kullandım. Benim yazdığım program 1 tane request yapıp kapanıyor. Performansı konusunda yardımcı olamam.


    If my calculations are correct, when this baby hits eighty-eight miles per hour... you"re gonna see some serious shit.
  9. KısayolKısayol reportŞikayet pmÖzel Mesaj
    nick6
    0x656e
    0x656e's avatar
    Kayıt Tarihi: 19/Mayıs/2012
    Homo
    end bunu yazdı
    NoktaliVirgul bunu yazdı

    Geçen ilk defa kullandım. Headless Mode yaparsan ekrana birsey çıkmıyor. 

    ----

    Python için şu şekilde kullanıyorum, mutluyum. "Headless modda windows-size vermene gerek yok" diyecekler çıkmazsa sevinirim :) 

    from selenium import webdriver
    from selenium.webdriver.chrome.options import Options
    chrome_options = Options()
    chrome_options.add_argument("--headless")
    chrome_options.add_argument("--window-size=415,700")
    browser = webdriver.Chrome(chrome_options=chrome_options, executable_path='chromedriver.exe')

    curl ya da benzeri guiless web request teknolojilerine kiyasla ne kadar verimli hocam bu?

    saniyede 1000 req cikartmaya kalksak ram yamulur mu dersin

    Ram yamulur çünkü içerisinde bir çok component ile birlikte açılıyor. Curl ise daha basit(O kadarda değil) sadece HTTP Metodlarıyla birlikte istek atan bir sistem. Saniyede 1000 req çıkartmak istiyorsan asenkron veya senkron bağlantı çıkartacaksın. Bunun içinde curl benzeri sadece HTTP metodlarını kullanabilen bir script yazmalısın. Selenium içerisinde css driverdan tut javascript drivera kadar bir çok şey var. Bildiğin chrome gibi düşün sadece senin verdiğin parametrelere göre DOM vs üzerinden işlemleri otomatikleştiriyor. 

    @NoktaliVirgul Window size vermenin sebebi sitenin arkaplanda gerekli boyutta açılmasını sağlamak için mi? Aksi halde responsive tasarımdan dolayı yazdığın kod işe yaramayacaktır? Bildim mi :D 

  10. KısayolKısayol reportŞikayet pmÖzel Mesaj
    end
    end's avatar
    Kayıt Tarihi: 16/Ekim/2016
    Erkek
    0x656e bunu yazdı
    end bunu yazdı
    NoktaliVirgul bunu yazdı

    Geçen ilk defa kullandım. Headless Mode yaparsan ekrana birsey çıkmıyor. 

    ----

    Python için şu şekilde kullanıyorum, mutluyum. "Headless modda windows-size vermene gerek yok" diyecekler çıkmazsa sevinirim :) 

    from selenium import webdriver
    from selenium.webdriver.chrome.options import Options
    chrome_options = Options()
    chrome_options.add_argument("--headless")
    chrome_options.add_argument("--window-size=415,700")
    browser = webdriver.Chrome(chrome_options=chrome_options, executable_path='chromedriver.exe')

    curl ya da benzeri guiless web request teknolojilerine kiyasla ne kadar verimli hocam bu?

    saniyede 1000 req cikartmaya kalksak ram yamulur mu dersin

    Ram yamulur çünkü içerisinde bir çok component ile birlikte açılıyor. Curl ise daha basit(O kadarda değil) sadece HTTP Metodlarıyla birlikte istek atan bir sistem. Saniyede 1000 req çıkartmak istiyorsan asenkron veya senkron bağlantı çıkartacaksın. Bunun içinde curl benzeri sadece HTTP metodlarını kullanabilen bir script yazmalısın. Selenium içerisinde css driverdan tut javascript drivera kadar bir çok şey var. Bildiğin chrome gibi düşün sadece senin verdiğin parametrelere göre DOM vs üzerinden işlemleri otomatikleştiriyor. 

    @NoktaliVirgul Window size vermenin sebebi sitenin arkaplanda gerekli boyutta açılmasını sağlamak için mi? Aksi halde responsive tasarımdan dolayı yazdığın kod işe yaramayacaktır? Bildim mi :D 

    Webdriver kuruyoruz, direkt tarayıcı çalıştırıyor. Ben de ona istinaden sordumdu zaten.

    Benim socket serverdan dönen değerlere göre işlem yapmam lazım mesela. Ama her kullanıcı için unique olacak bu socket oturumları.

    Sağlam bir makine kiralamak dışında çözüm yok glb


    0x0480 takilin madem ﷽﷽﷽
  11. KısayolKısayol reportŞikayet pmÖzel Mesaj
    NoktaliVirgul
    NoktaliVirgul's avatar
    Kayıt Tarihi: 02/Temmuz/2007
    Erkek
    0x656e bunu yazdı
    end bunu yazdı
    NoktaliVirgul bunu yazdı

    Geçen ilk defa kullandım. Headless Mode yaparsan ekrana birsey çıkmıyor. 

    ----

    Python için şu şekilde kullanıyorum, mutluyum. "Headless modda windows-size vermene gerek yok" diyecekler çıkmazsa sevinirim :) 

    from selenium import webdriver
    from selenium.webdriver.chrome.options import Options
    chrome_options = Options()
    chrome_options.add_argument("--headless")
    chrome_options.add_argument("--window-size=415,700")
    browser = webdriver.Chrome(chrome_options=chrome_options, executable_path='chromedriver.exe')

    curl ya da benzeri guiless web request teknolojilerine kiyasla ne kadar verimli hocam bu?

    saniyede 1000 req cikartmaya kalksak ram yamulur mu dersin

    Ram yamulur çünkü içerisinde bir çok component ile birlikte açılıyor. Curl ise daha basit(O kadarda değil) sadece HTTP Metodlarıyla birlikte istek atan bir sistem. Saniyede 1000 req çıkartmak istiyorsan asenkron veya senkron bağlantı çıkartacaksın. Bunun içinde curl benzeri sadece HTTP metodlarını kullanabilen bir script yazmalısın. Selenium içerisinde css driverdan tut javascript drivera kadar bir çok şey var. Bildiğin chrome gibi düşün sadece senin verdiğin parametrelere göre DOM vs üzerinden işlemleri otomatikleştiriyor. 

    @NoktaliVirgul Window size vermenin sebebi sitenin arkaplanda gerekli boyutta açılmasını sağlamak için mi? Aksi halde responsive tasarımdan dolayı yazdığın kod işe yaramayacaktır? Bildim mi :D 

    Bildin :D

    Ayrıca normal windowed açtığında örneğin minimum 400px küçülüyorsa headless modda daha da küçük açılabiliyor sanırım. Bu da benden bir fun fact olsun.


    If my calculations are correct, when this baby hits eighty-eight miles per hour... you"re gonna see some serious shit.
Toplam Hit: 4281 Toplam Mesaj: 17
selenium