Selenium basic

onder_09

Altın Üye
Katılım
17 Mart 2017
Mesajlar
202
Excel Vers. ve Dili
2016 türkçe
Altın Üyelik Bitiş Tarihi
19-07-2025
Herkese merhaba rahatsız ediyorum kusura bakmayın. Eklediğim dosyaya ekleyip b2 den itibaren yazacağım tesisat numarasını https://www.aydemperakende.com.tr/sozlesme-hesap-no-sorgula sitesinden sorgulayıp c2 ye direk sözleşme numarasını yazdırabilir miyiz acaba ? Örnek tesisat numarası 5045050
 

Ekli dosyalar

onder_09

Altın Üye
Katılım
17 Mart 2017
Mesajlar
202
Excel Vers. ve Dili
2016 türkçe
Altın Üyelik Bitiş Tarihi
19-07-2025
yardımcı olacak varsa çok yardımcı olur musunuz
 

onder_09

Altın Üye
Katılım
17 Mart 2017
Mesajlar
202
Excel Vers. ve Dili
2016 türkçe
Altın Üyelik Bitiş Tarihi
19-07-2025
@Haluk hocam ve diğer hocalarım yardımlarınızı bekliyorum :)
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,355
Excel Vers. ve Dili
Ofis 365 Türkçe
Merhaba,

Tam profesyonelce olduğunu sanmıyorum ama aşağıdaki kodları dener misiniz?

Kod:
Sub WebSorgula()

    'Referanslardan Selenium Type Library Yüklü Olmalı
    Dim driver As New WebDriver
  
    Set driver = New ChromeDriver
    Dim i As Long
    Dim adr As String
    
    With Application
        .ScreenUpdating = False
        .EnableEvents = False
    End With
    
    driver.AddArgument ("headless")
    driver.Start "chrome"
    
    Application.Wait Now + TimeValue("00:00:02")
    adr = " https://www.aydemperakende.com.tr/sozlesme-hesap-no-sorgula"
    driver.Get adr
    Application.Wait Now + TimeValue("00:00:02")

    For i = 2 To Cells(Rows.Count, "B").End(3).Row
    
        On Error Resume Next
    
        driver.FindElementByXPath("//*[@id='home']/form/div/input").Clear
        driver.FindElementByXPath("//*[@id='home']/form/div/input").SendKeys Cells(i, "B")

        driver.FindElementByXPath("//*[@id='button1']").Click
        Application.Wait Now + TimeValue("00:00:03")
        Cells(i, "C") = driver.FindElementByXPath("/html/body/main/div[2]/div/div[2]/b").Text
        
    Next i
        
    With Application
        .CutCopyMode = False
        .ScreenUpdating = True
        .EnableEvents = True
    End With

    driver.Close

End Sub
 

ismailem

https://asrisaadetyolu.blogspot.com/
Katılım
5 Haziran 2012
Mesajlar
102
Excel Vers. ve Dili
Office 2016 TR 64 Bit
Altın Üyelik Bitiş Tarihi
19-10-2023

onder_09

Altın Üye
Katılım
17 Mart 2017
Mesajlar
202
Excel Vers. ve Dili
2016 türkçe
Altın Üyelik Bitiş Tarihi
19-07-2025

Ekli dosyalar

  • 20.6 KB Görüntüleme: 7

onder_09

Altın Üye
Katılım
17 Mart 2017
Mesajlar
202
Excel Vers. ve Dili
2016 türkçe
Altın Üyelik Bitiş Tarihi
19-07-2025
Merhaba,

Tam profesyonelce olduğunu sanmıyorum ama aşağıdaki kodları dener misiniz?

Kod:
Sub WebSorgula()

    'Referanslardan Selenium Type Library Yüklü Olmalı
    Dim driver As New WebDriver
 
    Set driver = New ChromeDriver
    Dim i As Long
    Dim adr As String
   
    With Application
        .ScreenUpdating = False
        .EnableEvents = False
    End With
   
    driver.AddArgument ("headless")
    driver.Start "chrome"
   
    Application.Wait Now + TimeValue("00:00:02")
    adr = " https://www.aydemperakende.com.tr/sozlesme-hesap-no-sorgula"
    driver.Get adr
    Application.Wait Now + TimeValue("00:00:02")

    For i = 2 To Cells(Rows.Count, "B").End(3).Row
   
        On Error Resume Next
   
        driver.FindElementByXPath("//*[@id='home']/form/div/input").Clear
        driver.FindElementByXPath("//*[@id='home']/form/div/input").SendKeys Cells(i, "B")

        driver.FindElementByXPath("//*[@id='button1']").Click
        Application.Wait Now + TimeValue("00:00:03")
        Cells(i, "C") = driver.FindElementByXPath("/html/body/main/div[2]/div/div[2]/b").Text
       
    Next i
       
    With Application
        .CutCopyMode = False
        .ScreenUpdating = True
        .EnableEvents = True
    End With

    driver.Close

End Sub
Ellerinize sağlık hocam sizinki çalışıyor ama hepsini sorgulayıp yazıyor o da bir sorun teşkil etmiyor gibi gözüküyor şu anlık
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,355
Excel Vers. ve Dili
Ofis 365 Türkçe
Merhaba,

Soruda belirtmediğiniz için mantığı hepsini sorgulayacak şekilde kurdum.
Eğer istediğiniz sorgulamayı yapmak isterseniz koddaki döngüyü seçili değerler üzerinden yapılabilinir.
Yapamazsanız kodlarda revize yapabilirim.
 

ismailem

https://asrisaadetyolu.blogspot.com/
Katılım
5 Haziran 2012
Mesajlar
102
Excel Vers. ve Dili
Office 2016 TR 64 Bit
Altın Üyelik Bitiş Tarihi
19-10-2023

ismailem

https://asrisaadetyolu.blogspot.com/
Katılım
5 Haziran 2012
Mesajlar
102
Excel Vers. ve Dili
Office 2016 TR 64 Bit
Altın Üyelik Bitiş Tarihi
19-10-2023
Merhaba program böyle bir hata veriyor "driver.FindElementByXPath("/html/body/main/div[2]/div/div[1]/div/form/div/button").Click" zamanında Haluk hocam ekteki gibi bir program yapmıştı bunu uyarlamamız mümkün mü acaba ?
driver.FindElementByXPath("/html/body/main/div[2]/div/div[1]/div/form/div/button").Click yerine sabit driver.FindElementById("button1").Click kodu da kullanılabilir. Butona tıklarken elinizi fareden klavyeden çekiniz. İşlemlerin tamamlamasını bekleyiniz. Eliniz fare ya da klavye üzerindeyken ekranda bir hareketlilik oynama meydana geldiğinde elementlerin konumları değişebiliyor. Elementler sağa sola aşağa yukarı kayıp kaybolabiliyor. Tıklanacak elementi bulamayınca hata veriyor.
 

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
4,333
Excel Vers. ve Dili
Office 2019 (64 bit) - Türkçe
...Butona tıklarken elinizi fareden klavyeden çekiniz. İşlemlerin tamamlamasını bekleyiniz. Eliniz fare ya da klavye üzerindeyken ekranda bir hareketlilik oynama meydana geldiğinde elementlerin konumları değişebiliyor. Elementler sağa sola aşağa yukarı kayıp kaybolabiliyor. Tıklanacak elementi bulamayınca hata veriyor.
Bu yöntemi benimsemeyenler için Visual Studio ortamında Firefox WebBrowser VBA Type Library yazmıştım. İlginizi çekerse imzamdaki blog sayfamda bulabilirsiniz.

.
 
Üst