Veri analiz veya makine öğrenme projeleri gerçekleştirirken, web sitelerini kazıma yapmanız gerekebilir gerekli veriler ve projenizi tamamlayın. Python programlama dili, bu amaçla kullanılabilecek güçlü bir araç ve modül koleksiyonuna sahiptir. Örneğin, HTML ayrıştırması için BeautifulSoup modülünü kullanabilirsiniz.
BeautifulSoup özellikleri
Burada, BeautifulSoup'a bir göz atıp, neden şimdi web kazımasında yaygın olarak kullanıldığını bulacağız.
- Kolayca gezinme, ayrıştırma ağaçlarının araştırılması ve değiştirilmesi için çeşitli yöntemler sunar, böylece bir belgeyi kolayca ayırıp çok fazla kod yazmadan ihtiyacınız olan her şeyi ayıklayabilirsiniz.
- Giden belgeleri otomatik olarak UTF-8'e dönüştürür ve gelen belgeler Unicode'a dönüştürülür. Bu, belgede bir kodlama belirtilmişse Kodlamadan endişelenmenize gerek yok ya da Güzel Çorba otomatik olarak algılayabilir demektir.
- BeautifulSoup, html5lib ve lxml gibi diğer popüler Python ayrıştırıcılarından daha üstün olarak değerlendirilir. Farklı ayrıştırma stratejileri denemek sağlar. Bununla birlikte, bu modülün bir dezavantajı, hız pahasına daha fazla esneklik sağlamasıdır.
BeautifulSoup ile web sitenizi sıyırmak için neye ihtiyacınız var?
BeautifulSoup ile çalışmaya başlamak için, makinenize Python programlama ortamı (yerel veya sunucu tabanlı) ayarlamanız gerekir. Python genellikle OS X'e önceden kurulmuştur, ancak Windows kullanıyorsanız resmi web sitesinden dili indirip yüklemeniz gerekir.
Son olarak, HTML ile etiketleme ve yapıyla tanıdık ve rahat çalışmak, web kaynaklı verilerle çalışacağınızdan kesinlikle yararlıdır.
İstekleri ve BeautifulSoup kitaplıklarını içe aktarma
Python programlama ortamı iyi kurulduysa, şimdi istediğiniz herhangi bir adla yeni bir dosya (örneğin nano kullanarak) oluşturabilirsiniz.
İstekler kitaplığı, Python programlarınız içinde insan tarafından okunabilir bir HTTP formu kullanmanıza olanak tanır BeautifulSoup kazıma işlemini daha hızlı gerçekleştirirken import deyimini her iki kütüphaneyi de elde etmek için kullanabilirsiniz.
Bir web sayfasını toplama ve ayrıştırma
Requests.get yöntemini kullanın veri ayıklamak istediğiniz web sayfasının URL'sini toplamak için Next, bir BeautifulSoup nesnesi veya ayrıştırma ağacı oluşturun Bu nesne tak Belgeler Requests'tan bağımsız değişkenleri olarak alınır ve sonra ayrıştırılır. Toplanan, ayrıştırılmış ve BeautifulSoup nesnesi olarak ayarlanan sayfa ile, ihtiyacınız olan veriyi toplamaya devam edebilirsiniz.
Ayrıştırılmış web sayfasından istenen metnin çıkarılması
Web verilerini toplamak istediğinizde, o verilerin web sayfasının Document Object Model (DOM) tarafından nasıl tanımlandığını bilmeniz gerekir . Web tarayıcınızda, ilgilenilen verilerin bir bölümünü oluşturan öğelerden birinde sağ tıklayın (Windows kullanılıyorsa) veya CTRL + tıklama (macOS kullanılıyorsa). Örneğin, öğrencilerin uyruklarıyla ilgili verileri çıkarmak istiyorsanız, bir öğrencinin adlarından birine tıklayın. Bir bağlam menüsü görüntülenir ve içinde bir Inspect Öğesi (Firefox için) veya Inspect (Chrome için) gibi bir menü öğesi görürsünüz. İlgili Denetim menü öğesini tıkladığınızda, web geliştirici araçları tarayıcınızda görünür.
BeautifulSoup, web sitelerini kazıyarak çok esneklik sağlayan basit ve güçlü bir HTML ayrıştırma aracıdır. Kullanırken, web sitesinin Şartlarını ve Koşullarını kontrol etmek gibi genel kazıma kurallarına uymayı unutmayın; siteyi düzenli olarak ziyaret etmek ve sitedeki değişiklikler doğrultusunda kodunuzu güncellemek. Python ve BeautifulSoup ile web sitelerini kazıma konusunda bu bilgiye sahip olduğunuzdan, artık projeniz için ihtiyaç duyduğunuz web verilerini kolayca elde edebilirsiniz.
Post a comment