Web içeriği çoğunlukla yapılandırılmış veya HTML biçimindedir. Her sayfa, içindeki içeriğe bağlı olarak benzersiz bir şekilde düzenlenir. Birisi web bilgilerini ayıklamak isterse, verileri yapılandırılmış ve iyi organize edilmiş bir şekilde elde etmek her kişinin isteğidir. Bu, belgeyi paylaşmadan önce gözden geçirmek, analiz etmek ve organize etmek için gereken zamandan tasarruf etmenize yardımcı olacaktır. Ancak, çoğu web sitesi insanların büyük miktarda veri almasını önlemek için bu seçeneği sunmadığından, yapılandırılmış formatı elde etmek kolay değildir. Bununla birlikte, bazı siteler, insanlara hızlı ve kolay bir süreçte bilgi çıkarma seçeneği sunan API'ler sağlar.
Bu gibi durumlarda, kazıma olarak bilinen bir yazılım programlamasının yardımından başka seçeneğiniz olmayacaktır. Kullanıcıların yararlı bir biçimde bilgi toplamasına ve verilerin yapısını korumaya yardımcı olan bilgisayar programını kullanan bir yaklaşımdır.
Lxml ve İstek
Bu, XML ve HTML'yi hızlı bir şekilde analiz etmeye ve değerlendirmeye yardımcı olan ve zaman kazanmaya yardımcı olan geniş kapsamlı bir kazıma kütüphanesidir. Ayrıca, analiz sürecinde dağınık etiketlerle uğraşırken de yardımcı olur. Bu yordamda, daha hızlı, sağlam ve kullanıma hazır olduğundan yerleşik urllib2 yerine Lxml isteklerini kullanırsınız. Pip install Lxml ve pip install isteklerini kullanarak kurulumu kolaydır.
HTML kazıma için şu adımları izleyin
İçe aktarmayla başlayın - burada HTML'yi Lxml'den içe aktarın, ardından isteği içe aktarın. İsteği kullanın ve ayıklamak istediğiniz verileri içeren web sayfasını izleyin, HTML modülü ile analiz edin ve sonra ayrıştırılan verileri ağaca kaydedin.
HTML girişi bayt olarak almayı beklediğinden, metin yerine sayfa içeriğini kullanmanız gerekir. Analiz edilen verilerinizi sakladığınız ağaç artık bir ağaç yapısında HTML belgesini içeriyor. Ağaç yapısını XPath ve CSSelect gibi farklı yaklaşımlarla gözden geçirebilirsiniz.
XPath, bilgileri almanıza veya HTML veya XML gibi yapılandırılmış bir biçimde almanıza yardımcı olur. XPath öğelerini almanın çeşitli yolları vardır. Bunlar arasında Firefox için FireBug veya Chrome Inspector bulunur. Chrome'u kullanırken, bilgileri incelemek kolaydır, çünkü yalnızca inceleme gerektiren öğeyi 'sağ' tıklamanız, 'Öğeyi incele' seçeneğini seçmeniz, sağlanan kodu vurgulamanız ve ardından sağ tıklayıp XPath kopyasını seçmeniz gerekir. Bu işlem, sayfanızda hangi öğelerin bulunduğunu bilmenize yardımcı olur ve oradan doğru XPath sorgusunu oluşturmak ve Lxml XPath'i doğru bir şekilde uygulamak kolaydır.
Bu adımları uygulayarak, Lxml ve Requests kullanarak belirli bir web'den ayıklamak istediğiniz tüm verileri not etmenizi sağlar. Bilgileri iki liste hafızasında saklayacaksınız ve şimdi sıralamaya hazır. Python gibi bir programlama dili kullanarak analiz edebilir veya kaydedip paylaşabilirsiniz. Ayrıca, bilgileri paylaşmadan önce bazı bölümlerini yeniden yazmak veya düzenlemek isteyebilirsiniz.