Resimler gönderiler için kullanışlıdır. Ancak mümkün olduğunca az ve / veya küçük resimler kullanmak gerekir.
Bilgisayardaki bir hata mesajı veya kodu resim olarak eklemek yerine kendisini
kopyalayıp yapıştırın.
Resimler gönderiler için kullanışlıdır. Ancak mümkün olduğunca az ve / veya küçük resimler kullanmak gerekir.
Bilgisayardaki bir hata mesajı veya kodu resim olarak eklemek yerine kendisini
kopyalayıp yapıştırın.
0
c# ta siteden veri çekmek
Merhaba arkadaşlar ben web sitesinden bi veri çekmek istiyorum ama internette aradım sürekli <title> içindeki yazıyı çekiyorlar. Bazılarını anlamadım o yüzden bana yardımcı olursanız çok sevinirim. Ben siteden title değilde burdaki html kodundaki
<p id="contract">
<b>Geliştime masrafları </b> seviye 3:<br>
<img class="r1" src="assets/x.gif" alt="Odun" title="Odun">225 |
<img class="r2" src="assets/x.gif" alt="Tuğla" title="Tuğla">110 |
<img class="r3" src="assets/x.gif" alt="Demir" title="Demir">225 |
<img class="r4" src="assets/x.gif" alt="Tahıl­" title="Tahıl­">140 |
<img class="r5" src="assets/x.gif" alt="Tahıl Tüketimi" title="Tahıl Tüketimi">1 |
<img class="clock" src="assets/x.gif" alt="Dönem" title="Dönem">0:00:00<br>
<a class="build" href="village1.php?id=5&k=48bdc">seviye atlat 3</a>
</p>
0:00:00 yerini Label'a çekmek istiyorum nasıl yapabilirim? Yardım ederseniz çok sevinirim
Soran:08.07.16 21:31
misafir
0
C# ile HTML belgesi içindeki koddan bir etiketin içeriğini almak / HTML'yi çözümlemek için en çok tercih edilen yöntem HtmlAgilityPack isimli bir kütüphaneyi kullanmaktır.
Bu kütüphanede HTML belgesini yükleyip, XPath ile etiket veya etiketlere ulaşıp içeriğini alabilirsiniz.
Yanlız XPath bilmeniz gerekiyor.
İçinde sizin sorunuzda belirttiğiniz HTML kodu bulunan bir HTML belgesi için şöyle bir örnek verebiliriz:
void cozumle(string adres)
{
// Bir WebClient ile sayfanın tamamını string olarak al.
WebClient client = new WebClient();
string htmlString = client.DownloadString(adres);
// htmlBelgesiument nesnesi oluştur.
HtmlAgilityPack.HtmlDocument htmlBelgesi = new HtmlAgilityPack.HtmlDocument();
// Etiket kapatma hatalarını düzeltsin.
htmlBelgesi.OptionFixNestedTags = true;
// Belgeyi çözümle
htmlBelgesi.LoadHtml(htmlString);
// id özellik değeri contract olan etiketin içindeki 6. img etiketinden sonra gelen ilk
// metin düğümünü bul ve secilenler isimli koleksiyona ata.
HtmlAgilityPack.HtmlNodeCollection secilenler = htmlBelgesi.DocumentNode.SelectNodes("(/p[@id='contract']//img)[6]/following-sibling::text()");
if (secilenler != null) // Etiket bulabildiyse ... (Şarta uyan etiket bulunamadıysa null döndürüyor.)
{
// Aranan secilenler'in ilk elemanıdır. Bunun InnerText özellik değerini label1'in
// Text özelliğine ata.
label1.Text = secilenler[0].InnerText;
}
}
Yukarıda da söylediğim gibi biraz XPath öğrenmek gerekiyor. Ben şu anda müsait olmadığımdan kodu deneyemedim. Eğer soruya bir ekiniz olursa veya çalızmazsa üye olup bu cevap altına bir yorum ekleyerek bildirin.
Cevabı seçen: 12.07.16 14:46
canora101,387p
4ü
cevapsitesi.com'a katkınızdan dolayı teşekkür ederiz. Cevap yazarken lütfen şunlara dikkat edin:
Cevabınız açık ve net olmalıdır. Varsa alıntılar, bağlantılar, resim veya program kodu eklemelisiniz.
Eğer soru hakkında görüş bildirecekseniz veya cevap haricinde başka bir şey söylemek istiyorsanız yorum olarak yazın.
Tartışma çıkaracak cevaplardan kaçının, hitabınıza dikkat edin, "Kardeşim", "Arkadaşım" gibi ifadeler kullanmayın.
Eleştirmeyin. Sadece bilginizi gösterin ve fikrinizi söyleyin.
Büyük harf kullanmaktan ve cümle kurmaktan çekinmeyin. :)
Buraya yeni bir soru yazmayın, "benim de şöyle bir sorunum var" gibi eklemeler yapmayın. Sorunuz varsa yeni soru ekleyin.
ÜSLUP
ve SAYGI çok önemlidir. İnsanlar cevabınızdan çok üslubunuza dikkat ederler.
Cevabı, bir cevabın veya sorunun yorumu olarak dönüştürmek için ilgili cevabı veya soruyu tıklayın. [
İptal ]