Stop guessing what′s working and start seeing it for yourself.
Login or register
Q&A
Question Center →

Semalt: Python ile Web Kazıma

Hiçbir zaman Wi-Fi'iniz olmadığı zaman korkunç anlar yaşadınız mı . Eğer öyleyse, o zaman bilgisayarınızda ne yaptıklarının netin ne kadarına dayandığını anladınız. Üstün alışkanlıklardan ötürü, e-postalarınızı kontrol etmeyi, arkadaşınızın Instagram fotoğraflarını görüntülemenin yanı sıra kendi tweet'lerini okurken bulacaksınız.

Çok fazla bilgisayar çalışması web süreçlerini içerdiğinden, programlarınız çevrimiçi olabiliyorsa çok uygun olurdu.  Ağ kazımasında  durum böyle. Web'den içerik indirmek ve işlemek için bir program kullanmayı içerir. Örneğin, Google, web sayfalarını arama motorları için dizinlemek için çeşitli kazıma programları kullanmaktadır.

Verileri internetten kazıyabileceğiniz birçok yol vardır. Bu yöntemlerin çoğu, Python ve R gibi çeşitli programlama dillerinin komutlarını gerektirir. Örneğin, Python ile İstekler, Güzel çorba, Webbrowser ve Selenyum gibi bir takım modülleri kullanabilirsiniz.

'İstekler' modülü, bağlantı sorunları, ağ hataları ve veri sıkıştırması gibi zor sorunlardan kendinizi endişelenmenize gerek kalmadan dosyaları web'den kolayca indirebilme şansı verir. Mutlaka Python ile gelmez ve bu yüzden önce onu yüklemeniz gerekecektir.

Modül geliştirildi çünkü Python'un 'urllib2' modülü birçok komplikasyona sahip ve kullanımı zorlaştırıyor. Aslında yüklemek oldukça kolaydır. Tüm yapmanız gereken komut satırından pip yükleme talepleri çalıştırmaktır. Daha sonra, modülün doğru yüklendiğinden emin olmak için basit bir test yapmanız gerekir. Bunu yapmak için, etkileşimli kabuğa '>>> alma istekleri' yazabilirsiniz. Herhangi bir hata mesajı görüntülenmezse yükleme başarıyla tamamlandı.

Bir sayfayı indirmek için 'requests.get ()' işlevini başlatmanız gerekir. İşlev, indirilecek bir URL dizesini alır ve sonra bir 'yanıt' nesnesi döndürür. Bu, web sunucunuzun isteğiniz için döndüğü yanıtı içerir. Talebiniz başarılı olursa, indirilen web sayfası yanıt nesneleri metin değişkenine bir dize olarak kaydedilir.

Yanıt nesnesinin genellikle, indirilmenizin başarılı olup olmadığını öğrenmek için kullanabileceğiniz bir durum kodu özniteliği vardır. Benzer şekilde, bir yanıt nesnesinde 'raise_for_status ()' yöntemini çağırabilirsiniz. Dosyayı indirirken herhangi bir hata oluşursa bunun bir istisnası ortaya çıkar. Kötü bir karşıdan yükleme gerçekleştiğinde bir programın durduğundan emin olmanın harika bir yoludur.

Buradan, 'open ()' ve 'write ()' gibi standart işlevleri kullanarak indirilen web dosyanızı sabit sürücünüze kaydedebilirsiniz. Bununla birlikte, metnin Unicode kodlamasını korumak için, metin verilerini ikili veri ile değiştirmeniz gerekir.

Verileri bir dosyaya yazmak için, 'for' döngüsünü 'iter_content ()' yöntemi ile kullanabilirsiniz. Bu yöntem döngü boyunca her yinelemede bir sürü veri döndürür. Her toplu bayt cinsindendir ve her bir toplu olarak kaç bayt içereceğini belirtmelisiniz. Yazma bittikten sonra dosyayı kapatmak için 'close ()' 'i çağırın, işiniz bitti.

View more on these topics

Post a comment

Post Your Comment
© 2013 - 2024, Semalt.com. All rights reserved

Skype

semaltcompany

WhatsApp

16468937756

Telegram

Semaltsupport