Web'den Veri Al-Gönder(DOM-Document Object Model)

Excel programınıza Web Sayfalarından veri alarak çalışabileceğiniz bölüm.

Cevap: Web'den Veri Al-Gönder(DOM-Document Object Model)

İleti#21)  Erman Sekitmez » 02 Mar 2012 01:54

Genel bir yol vardır diyemem. Örnek varsa örnek üzerinden gidelim. Fakat en basiti tablo içinde Document.GetElementsByTagName( "TR") ile satır satır, Document.GetElementsByTagName( "TD") ile hücre hücre gezinti yapabilirsiniz.
Erman Sekitmez
Forum Moderatörü
 
Adı Soyadı:Erman Sekitmez
Kayıt: 02 May 2010 17:16
Konum: Aydın
Meslek: Planlama, süreç iyileştirme
Yaş: 41
İleti: 1077
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Aydın/Söke

Cevap: Web'den Veri Al-Gönder(DOM-Document Object Model)

İleti#22)  everestint » 14 May 2012 10:19

İyigünler

Erman üstadımın yaptığı çalışmayı inceledim ve çok harika bir olay olmuş. Benim sormak istediğim bir kaç sorum vardı.
İlgili web sitesindeki textboxlara bilgiler girildikten sonra site içerisinde "Oturum Aç" "Oturumu Kapat" ya da "Bilgileri Güncelle" gibi butonlar bulunmaktadır. Acaba bunları çalıştırmak için gereken kodu yazabilirmisiniz.
Teşekkürler...
Kullanıcı avatarı
everestint
Siteye Alışmış
 
Adı Soyadı:Nihat narin
Kayıt: 24 Kas 2009 10:23
Konum: Türkiye
Meslek: Esnaf
Yaş: 43
İleti: 105
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Malatya / Merkez

Cevap: Web'den Veri Al-Gönder(DOM-Document Object Model)

İleti#23)  Murat OSMA » 19 May 2012 10:11

Merhaba Nihat Bey,

Excel ile Web Sayfaları Veri İşlemleri başlığı altında birçok örnek bulabilirsiniz.
Keşke dediğiniz gibi tek bir sabit kod yeterli olsaydı ama maalesef...
Kullanıcı avatarı
Murat OSMA
Site Forum Yöneticisi
 
Adı Soyadı:Murat OSMA
Kayıt: 05 Arl 2008 00:34
Konum: İstanbul
Meslek: Excel & VBA Eğitmeni
Yaş: 33
İleti: 14307
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Bağcılar - İSTANBUL

Cevap: Web'den Veri Al-Gönder(DOM-Document Object Model)

İleti#24)  serdarakkoyunlu » 21 Haz 2012 15:26

Merhaba,

Öncelikle elinize sağlık çok kullanışlı bir programa benziyor. Bu programı aktif etmek için hangi referans dosyasını eklememiz gerekiyor. Commandbutton'u tıklayınca "Object Library invalid or contains references to object definitions that could not be found" hatası veriyor.
Kullanıcı avatarı
serdarakkoyunlu
Yeni Başlamış
 
Adı Soyadı:Serdar AKKOYUNLU
Kayıt: 19 Haz 2012 09:12
Konum: İzmir
Meslek: Yüksek Makina Mühendisi
Yaş: 37
İleti: 17
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İzmir

REKLAM
Excel Logo XML Oluşturucu
Logo Object Designer ile Uyarlama

Cevap: Web'den Veri Al-Gönder(DOM-Document Object Model)

İleti#25)  Murat OSMA » 21 Haz 2012 15:34

Referanslardan Microsoft Windows Common Controls 6.0'i seçin.
Kullanıcı avatarı
Murat OSMA
Site Forum Yöneticisi
 
Adı Soyadı:Murat OSMA
Kayıt: 05 Arl 2008 00:34
Konum: İstanbul
Meslek: Excel & VBA Eğitmeni
Yaş: 33
İleti: 14307
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Bağcılar - İSTANBUL

Cevap: Web'den Veri Al-Gönder(DOM-Document Object Model)

İleti#26)  serdarakkoyunlu » 21 Haz 2012 17:08

Seçili ama yine de çalışmadı. Birde evde deneyim. 2010 farkedebilir belki.
Kullanıcı avatarı
serdarakkoyunlu
Yeni Başlamış
 
Adı Soyadı:Serdar AKKOYUNLU
Kayıt: 19 Haz 2012 09:12
Konum: İzmir
Meslek: Yüksek Makina Mühendisi
Yaş: 37
İleti: 17
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İzmir

REKLAM
ETA - Excel Konsolide Raporlama
ETA Excel Personel Entegre Raporu

Cevap: Web'den Veri Al-Gönder(DOM-Document Object Model)

İleti#27)  Murat OSMA » 21 Haz 2012 17:58

2010 kullanmadığım için deneyemiyorum ama, ilgili referansı seçtikten sonra ToolBox'tan ListView'i seçip, UserForm'a ekledikten sonra dener misiniz ? Eğer denediyseniz, başka bir çözümünü bilmiyorum. [ilginc]

İyi günler...
Kullanıcı avatarı
Murat OSMA
Site Forum Yöneticisi
 
Adı Soyadı:Murat OSMA
Kayıt: 05 Arl 2008 00:34
Konum: İstanbul
Meslek: Excel & VBA Eğitmeni
Yaş: 33
İleti: 14307
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Bağcılar - İSTANBUL

Cevap: Web'den Veri Al-Gönder(DOM-Document Object Model)

İleti#28)  arachnanthe » 01 Arl 2012 13:06

Merhaba
Birden fazla sayfadan veri çekmek için bulduğum id leri excelde belirlediğim hücrelere nasıl adresleyebilirim.
Kullanıcı avatarı
arachnanthe
Siteye Alışmış
 
Adı Soyadı:Ömer Koçali
Kayıt: 26 Haz 2009 11:49
Konum: Kocaeli / Gebze
Meslek: Elektrik Teknikeri branş otomasyon
Yaş: 36
İleti: 192
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Kocaeli / Gebze

Cevap: Web'den Veri Al-Gönder(DOM-Document Object Model)

İleti#29)  Erman Sekitmez » 02 Arl 2012 04:23

Bir örnek üzerinden ayrı bir konu başlatır mısınız?. Sormak istediğiniz şey tam olarak anlaşılmıyor.
Erman Sekitmez
Forum Moderatörü
 
Adı Soyadı:Erman Sekitmez
Kayıt: 02 May 2010 17:16
Konum: Aydın
Meslek: Planlama, süreç iyileştirme
Yaş: 41
İleti: 1077
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Aydın/Söke

Cevap: Cevap: Web'den Veri Alma & Gönderme (DOM-Document Obj

İleti#30)  arachnanthe » 03 Arl 2012 11:21

Aşağıda alıntısını yaptığım 8 nolu mesajda bahsedilen GetElementByID yöntemi ile birden fazla siteden çekilen verileri excel de dosya açık olduğu sürece güncellenecek şekilde hücrelere aktarmak istiyorum.

Örnekde ki id ler ile anlatayım

dmi.gov.tr adresinden
A1 hücresi = ctl00_mpBody_thmMin1
B1 hücresi = ctl00_mpBody_thmMax1

ikinci_site.com
A2 = tag1
B2 = tag 2

üçüncü site.com
C1 = tagxx
D1 = tagyy

Erman Sekitmez yazdı:Bu da GetElementById yöntemi ile aynı bilgiye ulaşmayı gösteren örnektir. Önceki mesajdaki resimden görüldüğü üzere sayfanın kodlaması çok düzgün yapılmış ve her hücreye bir ID değeri atanmış. Bundan faydalanarak aşağıdaki gibi bir makro yazılabilir:

Kod: Tümünü seç
Sub HavaDurumu2()
Set ie = CreateObject("internetexplorer.application")
ie.navigate "http://www.dmi.gov.tr/tahmin/il-ve-ilceler.aspx?m=SOKE"
Do
DoEvents
Loop Until ie.busy <> True
With ie.document
    msgsatir1 = .getElementById("ctl00_mpBody_thmGun1").innertext & " : " & .getElementById("ctl00_mpBody_thmMin1").innertext & " / " & .getElementById("ctl00_mpBody_thmMax1").innertext
    msgsatir2 = .getElementById("ctl00_mpBody_thmGun2").innertext & " :" & .getElementById("ctl00_mpBody_thmMin2").innertext & " / " & .getElementById("ctl00_mpBody_thmMax2").innertext
    msgsatir3 = .getElementById("ctl00_mpBody_thmGun3").innertext & " : " & .getElementById("ctl00_mpBody_thmMin3").innertext & " / " & .getElementById("ctl00_mpBody_thmMin3").innertext
End With

Set ie = Nothing
MsgBox msgsatir1 & Chr(10) & msgsatir2 & Chr(10) & msgsatir3
End Sub



Bu şekilde yapılmış bir makro sadece tablo hücrelerine verilen ID değerleri değiştiği zaman çalışmayacaktır. Bir önceki mesajdaki örnek ise sayfaya eklenecek yada çıkartılacak herhangi bir HTML tag'ı (etiketi) ile elemanların sıra numaraları (i) kayacağından çalışmaz duruma gelecektir.
Kullanıcı avatarı
arachnanthe
Siteye Alışmış
 
Adı Soyadı:Ömer Koçali
Kayıt: 26 Haz 2009 11:49
Konum: Kocaeli / Gebze
Meslek: Elektrik Teknikeri branş otomasyon
Yaş: 36
İleti: 192
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Kocaeli / Gebze

Cevap: Web'den Veri Al-Gönder(DOM-Document Object Model)

İleti#31)  Erman Sekitmez » 03 Arl 2012 23:29

Sırasıyla istediğiniz sitelere gidip, belirttiğniz ID' lere ait verileri çeken bir makro yazın. Sonrasında başka bir makroda application.ontime yöntemi kullanarak ilk belirlediğiniz zaman aralıklarında ilk makronuzun çalışmasını sağlayın. Application.Ontime yönteminin kullanımı için site içinde arama yapabilirsiniz.
Erman Sekitmez
Forum Moderatörü
 
Adı Soyadı:Erman Sekitmez
Kayıt: 02 May 2010 17:16
Konum: Aydın
Meslek: Planlama, süreç iyileştirme
Yaş: 41
İleti: 1077
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Aydın/Söke

Cevap: Web'den Veri Al-Gönder(DOM-Document Object Model)

İleti#32)  arachnanthe » 04 Arl 2012 14:26

Erman bey örnekleri incelediğimde id no ile veri cekip hücreye yazan bir örnek bulamadım örnekler hep web veri yollamayı anlatıyor.
Rica etsem webden veriyi çekip belirtilen hücrelere yazan bir örnek verirmisiniz.

http://www.bigpara.com/borsa/canli-borsa-yeni Bu sayfadaki tüm veriler id ile belirtilmiş bu sayfadan örnek verirseniz sevinirim.
Kullanıcı avatarı
arachnanthe
Siteye Alışmış
 
Adı Soyadı:Ömer Koçali
Kayıt: 26 Haz 2009 11:49
Konum: Kocaeli / Gebze
Meslek: Elektrik Teknikeri branş otomasyon
Yaş: 36
İleti: 192
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Kocaeli / Gebze

Cevap: Web'den Veri Al-Gönder(DOM-Document Object Model)

İleti#33)  Murat OSMA » 04 Arl 2012 15:31

Merhaba Ömer Bey,

Excel ile Web Sayfaları Veri İşlemleri başlığı altında Web sitesinden veri çekme ile ilgili onlarca konu var, nasıl bulamadınız şaşırdım. [ilginc]

Buyurun size birkaç örnek konu;
viewtopic.php?f=92&t=11870
viewtopic.php?f=92&t=4062
viewtopic.php?f=92&t=6399
viewtopic.php?f=38&t=5814
viewtopic.php?f=92&t=5975
viewtopic.php?f=92&t=5965
viewtopic.php?f=92&t=4151
viewtopic.php?f=92&t=3995&start=0

daha fazlası için ilgili başlık altındaki konuları inceleyiniz.

İyi günler. --)(
Kullanıcı avatarı
Murat OSMA
Site Forum Yöneticisi
 
Adı Soyadı:Murat OSMA
Kayıt: 05 Arl 2008 00:34
Konum: İstanbul
Meslek: Excel & VBA Eğitmeni
Yaş: 33
İleti: 14307
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Bağcılar - İSTANBUL

Cevap: Web'den Veri Al-Gönder(DOM-Document Object Model)

İleti#34)  arachnanthe » 05 Arl 2012 10:33

Murat Bey belki ben örnekleri anlayamamış olabilirim fakat bu örnekler anladığım kadarı ile sayfayı yada tabloyu tamamen alıyor ve belirtilen hücreden itibaren dolduruyor.

Ben ise id numarasını bildiğim veriyi istediğim hücreye oturtmak istiyorum sayfadaki verilerin tamamını istemiyorum

örnek bu sayfada http://www.bigpara.com/borsa/canli-borsa-yeni ADANA VE ADBGR nin son fiyatları lazım diyelim a1 ve d2 hücrelerine bunları eklemek istiyorum.
Kullanıcı avatarı
arachnanthe
Siteye Alışmış
 
Adı Soyadı:Ömer Koçali
Kayıt: 26 Haz 2009 11:49
Konum: Kocaeli / Gebze
Meslek: Elektrik Teknikeri branş otomasyon
Yaş: 36
İleti: 192
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Kocaeli / Gebze

Cevap: Web'den Veri Al-Gönder(DOM-Document Object Model)

İleti#35)  Murat OSMA » 05 Arl 2012 20:53

Yo hayır dikkatli incelememişsiniz. Sadece sayfayı ya da tabloyu komple alan örnekler yok. Bahsettiğiniz gibi belli olan istediğiniz alanı da istediğiniz hücreye alabileceğiniz örnekler de var ki, zaten üzerinde yazdığınız bu konunun ilk sayfasına bakarsanız orada Sn. Erman SEKİTMEZ'in anlatımını bulabileceksiniz.

İyi akşamlar... --)(
Kullanıcı avatarı
Murat OSMA
Site Forum Yöneticisi
 
Adı Soyadı:Murat OSMA
Kayıt: 05 Arl 2008 00:34
Konum: İstanbul
Meslek: Excel & VBA Eğitmeni
Yaş: 33
İleti: 14307
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Bağcılar - İSTANBUL

Cevap: Web'den Veri Al-Gönder(DOM-Document Object Model)

İleti#36)  askmasaji » 01 Oca 2013 09:47

Merhaba excelvba.net sakinleri! Yeni yılınızı kutlar sağlık huzur ve saadetler dilerim. Sayın Sekitmez'in Dom.rar dosyasını indirmiştim. Ve yaklaşık 1 yıldır hem 2003 hem 2007 de kullanıyordum. Windows 7 ultimate 64 bit ve ofis 2007 de kullanırken sanırım güncellemelerden kaynaklanan bir sorun yüzünden "Automation Error Belirtilmeyen hata" uyarısı vermeye başladı. Ne dom.xls çalışıyordu ne de kendi dosyalarım. İnternette aynı hatayı alanların ofisi kaldırıp yeniden yüklediğinde düzeldiğini öğrenince, ben de kaldırıp tekrar yükledim. Normale döndü. Fakat yine güncellemeler arka planda yapıldığı için olsa gerek , yeniden bozuldu. Bu sefer ofisi kaldırmadan otomasyon ile ilgili eklentilerden kaynaklanabileceği aklıma gelince etkin olmayan tüm eklentileri etkinleştirip yüklü olmayanları da yükledim. Bu sefer de "Komut programa gönderilirken hata oluştu" demeye başladı. Hem de tüm dosyalarda. Ben de eklentileri tekrar devredışı bıraktım. Bu sefer kendi dosyalarımı açabiliyor ve VBA çalıştırabiliyor olmama rağmen Dom.xls dosyasını çalıştıramıyorum. Dosya açılıyor ama ana programı çalıştıran butona bastığımda yine otomasyon hatası veriyor. Bu dosyayı kullanabilmek için acaba uyumsuz olan bir referans mı var, yada eklenecek bir referans? Bu sorunla başka karşılaşan oldu mu bilmiyorum ama yardımcı olabilirseniz minnettar olacağım. Zira bu Dom.xls dosyası benim elim ayağım diyebilirim. Sekitmez beyden Allah Razı olsun. Tekrar ofis kaldırıp kurmayla uğraşmak çk zamanımı alacağından ve güncellemeler yüzünden aynı sorunla tekrar karşılaşacağımdan dolayı bunun dosya içindeki bir ayarlamayla halledilip edilmeyeceğini merak ediyorum. Buraya kadar sabırla bu yazıyı okuyan ve zamanını ayıran tüm excelvba dostlarından Allah razı olsun. Sağlıcakla kalın ve Allah'a emanet olun...
Kullanıcı avatarı
askmasaji
 
Adı Soyadı:Levent Aşık
Kayıt: 08 Şub 2012 11:57
Konum: Ankara
Meslek: web tasarımcısı
Yaş: 40
İleti: 6
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Ankara

Cevap: Web'den Veri Al-Gönder(DOM-Document Object Model)

İleti#37)  Erman Sekitmez » 16 Oca 2013 01:24

1. http://www.ocxdump.com/download-ocx-fil ... nload.html sitesinden MSCOMCTL.OCX dosyasını indirin.

2. C:\Windows\SysWOW64\MSCOMCTL.OCX dosyanızın bir yedeğini alın ve silin.

3. İndirdiğiniz dosyayı eskisinin yerine kaydedin.

4. Command prompt' a tırnak işaretleri olmadan "regsvr32.exe /u C:\Windows\SysWOW64\MSCOMCTL.OCX" komutunu çalıştırın.

5. Sonrasında "regsvr32.exe C:\Windows\SysWOW64\MSCOMCTL.OCX" komutunu çalıştırın.

6. Problem çözülmesse eski mscomctl.ocx dosyanızı tekrar yerine kopyalayın ve 4. -5. adımları tekrar edin.
Erman Sekitmez
Forum Moderatörü
 
Adı Soyadı:Erman Sekitmez
Kayıt: 02 May 2010 17:16
Konum: Aydın
Meslek: Planlama, süreç iyileştirme
Yaş: 41
İleti: 1077
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Aydın/Söke

Cevap: Web'den Veri Al-Gönder(DOM-Document Object Model)

İleti#38)  serkan7935 » 10 Şub 2013 16:33

Sayın Erman Sekitmez,
Öncelikle programınızı çok beğendim Excelde gayet iyi çalışıyor fakat aynı uygulamayı VB.NET de çalıştıramadım. Özellikle element isimlerini ListBox da gösteremedim. Bu konuda yardımcı olursanız çok makbule geçer. Şimdiden çok teşekkürler :)
Kullanıcı avatarı
serkan7935
Yeni Başlamış
 
Adı Soyadı:Serkan Nayman
Kayıt: 23 Şub 2010 19:08
Yaş: 39
İleti: 28
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İZMİR

Cevap: Web'den Veri Al-Gönder(DOM-Document Object Model)

İleti#39)  Erman Sekitmez » 11 Şub 2013 00:02

VB.NET'im olmadığı için yardımıcı olamayacağım; ancak VB.NET bölümünde yeni bir başlık açarsanız yardımcı olacak birisi çıkabilir: viewforum.php?f=125 linkinde
Erman Sekitmez
Forum Moderatörü
 
Adı Soyadı:Erman Sekitmez
Kayıt: 02 May 2010 17:16
Konum: Aydın
Meslek: Planlama, süreç iyileştirme
Yaş: 41
İleti: 1077
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Aydın/Söke

Cevap: Cevap: Web'den Veri Al-Gönder(DOM-Document Object Mod

İleti#40)  Erman Sekitmez » 13 Mar 2013 03:39

Markowitz yazdı:Bir de benim anlamadığım, bu programla aktif internet sayfası mı değiştiriliyor ?
Eğer böyle bir şey mümkünse çok tehlikeli sulardayız demektir....

Sadece bilgisayarınızdaki kopyasını değiştiriyor. Tekrar yüklerseniz orjinali geri gelir. O kadar tehlikeli değil. :)

Sanırım ekteki değişikliği yapmak istiyorsunuz:
1.PNG
Bu iletideki ekleri görmek için gerekli yetkilere sahip değilsiniz.
Erman Sekitmez
Forum Moderatörü
 
Adı Soyadı:Erman Sekitmez
Kayıt: 02 May 2010 17:16
Konum: Aydın
Meslek: Planlama, süreç iyileştirme
Yaş: 41
İleti: 1077
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Aydın/Söke

ÖncekiSonraki

Forum Excel ile Web Sayfaları Veri İşlemleri

Online Kullanıcılar

Bu forumu görüntüleyenler: Kayıtlı kullanıcı yok ve 1 misafir

Bumerang - Yazarkafe