Konuyu Oyla:
  • Toplam: 0 Oy - Ortalama: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Sayfa kaynak kodundaki içeriklere ulaşmak
#1
Selam arkadaşlar. aşağıdaki alışveriş sitesindeki ürünlerin ad ve fiyat içeriklerini çekip excel de sıralamak istiyorum. 2016 yılında uğraşıp yapmıştım fakat site içeriği komple değiştiğinden şimdi ulaşamıyorum. Acaba bu sitenin ürün ad ve fiyat içeriğini C# da nasıl çekebilirim?

Örnek link
https://www.migros.com.tr/sut-kahvaltilik-c-4

Normalde firefox, chrome ile sayfa kaynak koduna baktığımızda hiçbir ürünün ad ve fiyatı görüntülenmemekte.
Ara
Cevapla
#2
HtmlAgilityPack ve İnterop Microsoft Office ile istediğiniz iki işlemide yapabilirsiniz. Sayfaya hangi kütüphane ile erişmeye çalışıyorsunuz

Şuan mobilim kaynak koda bakamadim ben pcden bakayım
Cevapla
#3
soruyu sorduktan sonra geçmişte kullandığım microsoft visual studio yu kurup bir test yapayım dedim. normal sitelerde sayfa kaynak kodunu örneğin textbox'a yazdırırken yukarda verdiğim sitenin içeriğinde aşağıda belirttiğim hata vererek sonuçlanıyor.

Hata resmi



Bu işlerde epey amatörüm. O yüzden önerilerinizde basit anlatım yaparsanız çok sevinirim. Big Grin
Ara
Cevapla
#4
Tamamdır ben şimdi kalideyim hocam daha sonra windowsa geçince bir bakayım sizin için
Cevapla
#5
belirttiğim sorunu aştım aşağıda resimde görüldüğü gibi şu anda sayfa kaynak kodundaki bilgiler geliyor fakat hiçbir ürün adı ve fiyat bilgisi bu kaynak kodunda yok.

Ara
Cevapla
#6
Hocam inceledim kaynak kodunu alamadım , aldığınız hatanın sebebi de kaynak kodun alınması engellenmiş. Eğer bilgisyar açıkken işlemler yapılacaksa çözüm değil ama selenyum kullanabilirsiniz ek olarak aşma yollarına bakabilirsiniz.

attığınız sayfada engellenmiş zaten iyice bakarsanız 
Kod:
 <body class="mat-typography">
   <sm-root></sm-root>

şu kısmın boş olduğunu göreceksiniz
Cevapla
#7
Sayffadaki javascriptleri çalıştırman lazım. Javascript sayfayı tekrar düzenliyor. Eğer C# da çektiğin boş kaynak sayfasını render edebileceğin bir kütüphane, js kodlarını çalıştıran, varsa kullanabilirsin. Veya @Akif Alioğlu dediği gibi selenium ile sayfayı çekip, render ettikten sonra sayfa kaynak kodlarında işlemleri yapman gerekir.

https://www.qafox.com/selenium-c-sharp-r...ge-source/   buraya bi göz at istersen.
Ara
Cevapla
#8
selenium ile bu iş olucak gibi.c# da selenium ile div classlara ulasmayi arastirip, ogreneyim. çünkü div class içerisinde hem urunlerin isimleri, hemde fiyatları gözükmekte.

kurcalayim bakayim ne çıkacak Smile

sagolun fikirleriniz için teşekkür ederim
Ara
Cevapla
#9
Xpath finder toollara bak gayet kullanışlılar mesala tarayıcıyı headless modda açıp düzenleme yapabilirsin Smile oktay hocanın dediği gibi js engelliyor ama hangi js bulamadım

Daha doğrusu bir js dosyası dolduruyor
Cevapla
#10
(05-12-2021, Saat: 20:00)ahmettepe Nickli Kullanıcıdan Alıntı:  selenium ile bu iş olucak gibi.c# da selenium ile  div classlara ulasmayi arastirip, ogreneyim. çünkü div class içerisinde hem urunlerin isimleri, hemde fiyatları gözükmekte.

kurcalayim bakayim ne çıkacak Smile

sagolun fikirleriniz için teşekkür ederim

Katalon Recorder  ve  Selenium IDE     bu iki eklenti hem chrome hem de mozilla da var.   Bu eklentileri ekleyerek sayfa üzerinde yaptığın işlemleri selenium scriptine dökebilirsin. Mesela diyelimki bişeyler yaptın sayfada, yorum vs yaptın, bu eklentiler tıkladığın yerden yazdığın yazıya kadar herşeyi kayıt ediyor,  sonra export basınca istediğin dilede(python,java,C#) sana scripti hazırlayıp veriyor.

Benim çok işime yarıyor.

2. yol;  sayfada ters tıkla > Denetle > bulmak istediğin kısmı html kodunda seç > kopyala > Xpath kopyala 

Bu şekilde yapınca sana xpath verir, seleniumda xpath ile seçim yaparak sayfadan istediğini çekersin.

Ara
Cevapla

{lang: 'en'}


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Soru Raspberry Pi'de kök dosyalara ulaşmak? vayvan 0 896 31-01-2019, Saat: 00:38
Son Yorum: vayvan

Hızlı Menü:


Konuyu Okuyanlar: 1 Ziyaretçi
Change Theme