C#-Web-Botu

C# ile html kodlarını istediğimiz gibi yönetebilmemizi sağlayan bir kütüphane Html Agility Pack (HAP) kullanarak C# ile web botu yapımından kısaca bahsedelim. Görseldeki gibi sitemizdeki yazıların başlıklarını çeken mini bir bot yapalım. Kütüphanenin web sayfasına buradan, nuget paketi sayfasınada buradan ulaşabilirsiniz.

C# projelerinize yükleme şekli:
(Package Manager Console)

Class içerisinde kullanım için:

Site kodlarını indirme

Örnek olarak blog sitemizi‘i ele alalım. Postlarda başlıkları çeken bir uygulama yapalım. Öncelikle sitenin html kodlarını bir string’e atamamız gerekiyor. Tükçe karakterleri tanımak için WebClient sınıfının Encoding özelliğini UTF8 olarak tanımlamayı unutmuyoruz. SercivePointManager ise https olan güvenli sayfalar için tls bağlantısı kurarken hata almamamız için eklenir.

Html kodları HAP’a yükleme

String olarak çektiğimiz kodları Html Agility Pack ile incelemek ve ayrıştırmak için bir document oluşturuyoruz.

Bot oluşturma

İşin en sıkıntılı kısmı bu kodlardan istediğimiz kısımları çekmektir. Önce botunu yazdığımız siteye girip çekmek istediğimiz kısmı ayırt eden html özelliği buluyoruz. Bunu siteye sağ tıklayıp ögeyi denetle yaparak bulabiliriz. Bizim senaryomuza göre çekmek istediğimiz kısım başlıklar h3 elementinin entry-title td-module-title classının textinde saklı.

Kodblogum.com sitemizden yazıların başlıklarını çeken C# ile web botu örneğini tamamlamış olduk. Proje kodlarına github linkinden ulaşabilirsiniz.

https://github.com/fatihyldrim/C-web-bot-ornegi/

2 YORUMLAR

    • Projeniz en az .net 4.5 sürümü olmalıdır. Alt sürümlerinde System.Net kütüphanesinde Tls12 olmadığı için güvenli bağlantı oluşturulamayabilir.

CEVAP VER

Yorum yazın
Lütfen adınızı buraya giriniz

Bu site, istenmeyenleri azaltmak için Akismet kullanıyor. Yorum verilerinizin nasıl işlendiği hakkında daha fazla bilgi edinin.