5.00 / 1 oy

Scrapy'de user-agent değiştirmek

Scrapy ile bir internet sitesini crawl ederken hangi user-agent bilgisini kullanarak bu crawling işlemini yapacağımızı kendimiz belirleyebiliyoruz. Bir internet sitesine tarayıcı aracılığıyla bir istek (request) gönderdiğimizde request header'da user-agent olarak tarayıcı bilgileri görünür. Srapy'de ise herhangi bir değişiklik yapmadan bir sunucuya istek göndermeniz durumunda user-agent bilgilerinizde Scrapy/x.x.x (kullanmakta olduğunuz Scrapy sürümü) görünecektir. Çok sık bot trafiği alan sunucularda bu gibi user-agent'lara karşı otomatik engellemeler olduğu için crawling işleminizi sorunsuz tamamlayabilmek için user-agent'ınızı değiştirerek Scrapy'yi tarayıcı gibi gösterebilirsiniz. Bunun için tarayıcınız ile bir internet sitesine girdikten sonra Network sekmesinden Request Headers altındaki user-agent bilgisini kopyalayın ve aşağıdaki şekilde Scrapy içinde user-agent bilgisini değiştirirken kullanın.

1. yöntem: settings.py dosyası içerisinde:

Yorum olarak işaretlenmiş olan USER_AGENT satırındaki yorumu kaldırın ve kendiniz ve internet siteniz hakkında bilgi verin (anonim olarak crawling yapmak için ise tarayıcınızda kopyalamış olduğunuz user-agent bilgisini buraya yapıştırın).

2. yöntem: scrapy.Request fonksiyonu içerisinde headers bilgilerini güncelleyin

3. yöntem: settings.py dosyası içerisinde DEFAULT_REQUEST_HEADERS seçeneğini değiştirmek:

DEFAULT_REQUEST_HEADERS = {
'User-Agent': Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.101 Safari/537.36
}

 

Editör editi: sitedeki bazı diğer benzer başlıklar için;

bkz: Scrapy ile yeni bir proje açmak

bkz: Anaconda Navigator'a Scrapy Kurmak

bkz: Scrapy sonuçlarını export etmek (json, xml, csv)

bkz: Selenium nedir?

bkz: Python ve Scrapy ile UTF-8 karakter hatalarını düzeltmek

bkz: Selenium IDE Kurulumu (Chrome ve Firefox)

m.cengiz

17.06.2021 11:51

Bu soru henüz yanıtlanmamış.

Bu soruya sadece kayıtlı kullanıcılar yanıt yazabilirler. Yanıt yazmak için lütfen giriş yapınız.

Reitix
Scrapy'de user-agent değiştirmek

İnternet sitemizdeki deneyiminizi iyileştirmek için çerezler kullanıyoruz. Bu siteye giriş yaparak çerez kullanımını kabul etmiş sayılıyorsunuz. Daha fazla bilgi.