• Foruma hoş geldin 👋 Ziyaretçi

    Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak tamamen ücretsizdir.

Çözüldü Selenium VBA Chrome Yeni Pencere Kontrolü

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.
Durum
Konu Çözümlendiği İçin Kapatılmıştır.

hakankaradut

Yeni Üye
Katılım
3 Haz 2022
Mesajlar
2
Aldığı beğeni
0
Excel V
Office 2016 TR
Merhaba. Selenium vba ile ilgili bir sorum olacak. Excel Vba ile chrome tarayıcısını açarak e beyanname sitesine girdikten sonra giriş butonuna tıkladığım zaman yeni pencere açılıyor. Eski pencereyi kapatıp yeni penceredeki kullanıcı kodu ve şifre kısmını doldurtmayı başaramadım. Acemi olduğum için çok saçma sapan bir kodda yazmış olabilirim ama yazdığım kodu içeren örnek dosyayı ekliyorum. Eski chrome penceresini kapatıp son açılan chrome penceresini kumanda edebilmem için gereken kod konusunda yardımcı olabilir misiniz ?
 

Ekli dosyalar

Çözüm
Kodları aşağıdaki şekilde değiştirin.
Kod:
Sub GIB()

If oto Is Nothing Then Set driver = New ChromeDriver

oto.Get "https://ebeyanname.gib.gov.tr/index.html"

oto.Wait 1000

oto.FindElementByXPath("/html/body/div/div[2]/div[1]/div[2]/img").Click

oto.Wait 1000
oto.SwitchToNextWindow

oto.FindElementById("username").SendKeys "12345678"
oto.FindElementById("password2").SendKeys "abcdef"
oto.FindElementById("password1").SendKeys "123456"
oto.FindElementByCss("#loginForm > table > tbody > tr:nth-child(5) > td").Click
oto.Wait 1000

End Sub
Kodları aşağıdaki şekilde değiştirin.
Kod:
Sub GIB()

If oto Is Nothing Then Set driver = New ChromeDriver

oto.Get "https://ebeyanname.gib.gov.tr/index.html"

oto.Wait 1000

oto.FindElementByXPath("/html/body/div/div[2]/div[1]/div[2]/img").Click

oto.Wait 1000
oto.SwitchToNextWindow

oto.FindElementById("username").SendKeys "12345678"
oto.FindElementById("password2").SendKeys "abcdef"
oto.FindElementById("password1").SendKeys "123456"
oto.FindElementByCss("#loginForm > table > tbody > tr:nth-child(5) > td").Click
oto.Wait 1000

End Sub
 
Çözüm
Yardımınız için çok teşekkür ediyorum, sorunum çözülmüştür.

Yeni pencereyi kontrol edebiliyoruz bu kodlarla. Yalnız yeni pencere açıldıktan sonra eski ana pencereyle hiçbir işim kalmıyor. Onunda otomatik kapanmasını istersek vba ile yapabilir miyiz ?
 
Durum
Konu Çözümlendiği İçin Kapatılmıştır.
Geri
Üst