29 puan yazan xguru 2021-11-29 | 12 yorum | WhatsApp'ta paylaş
<p>- Eğer milyonlarca Google araması çalıştıran bir hizmet kuracaksanız, engellenmeyecek bir alternatife ihtiyacınız olur<br /> - En kolay yol ücretli proxy kullanmaktır ama oldukça pahalıdır <br /> → Bu yüzden yazarın denediklerini ayrıntılı biçimde anlattığı ilginç bir yazı<br /> <br /> - Başlangıçta AWS Lambda + Puppeteer kullanılmış <br /> → AWS dünya genelinde 16 bölge sunuyor ve Lambda’yı 3 kez çalıştırınca yeni bir IP atanıyor <br /> → Aynı anda 1000 Lambda çalıştırılırsa yaklaşık 250 public IP kullanılmış oluyor<br /> → 16 bölge * 250 = 4000 IP adresi; bu da haftalık milyon seviyesinde Google araması yapmak için yeterli <br /> → GCP’de de denenmiş ama ilginç olan, Google’ın kendi bulut IP’lerini AWS’ye kıyasla daha agresif biçimde engellemesi<br /> → Bu, 2019~2020 arasındaki bir deneyim; şimdi değişmiş olabilir <br /> <br /> - Bu yöntem Google/Bing/Amazon gibi siteleri scrape etmekte kullanılabilir ama sınırları var<br /> → DataDome, Akamai, Imperva gibi anti-bot şirketleri kullanılıyorsa uygulanamaz <br /> → Tarayıcı fingerprinting’in çok çeşitli yöntemleriyle bunun bot olup olmadığını tespit ediyorlar<br /> → Google Picasso, Font/TLS/WebGL fingerprinting..<br /> → Aslında büyük ölçekli scraping hizmetlerinin çoğu cloud + Docker container kullandığı için tespit edilmeleri kolay<br /> <br /> - Tespit edilmesi zor ve ölçeklenebilir bir scraping altyapısı <br /> → Başarılı scraping için iki kural <br /> 1. Tarayıcı ayarları hakkında yalan söylememek <br /> 2. En önemlisi, tarayıcı ayarları hakkında yalnızca "kimsenin fark etmeyeceği durumlarda" yalan söylemek<br /> → Bunun için en iyi sonucun doğrudan "gerçek cihazlar kullanmak" olduğu sonucuna varılmış<br /> ⇨ Farklı üreticilerden 500 ucuz Android cihaz satın alıp uygun fiyatlı veri planlarına abone olmak<br /> ⇨ Bunları farklı şehirlere dağıtmak (antenlere yakın yerlere)<br /> ⇨ DeviceFarmer/stf gibi open source araçlarla cihazları aynı anda kontrol etmek <br /> ⇨ Android Go gibi hafif bir OS kurup her 5 dakikada bir uçak moduna alarak sürekli yeni IP adresleri edinmek<br /> ⇨ "4G carrier grade NAT": IPv4 adres tükenmesini önlemek için tasarlanmış bu yöntemde yüz binlerce kullanıcı aynı IP’yi paylaşabildiğinden engellemek pratikte imkânsızdır<br /> → Ancak 500 Android cihaz satın almak, kurulum için yer ayarlamak ve donanım bakımı yapmak gibi zahmetli yönleri var <br /> <br /> - İyileştirme: Android’i emüle etmek <br /> → Android cihaz satın almak yerine Android-X8, Bluestacks, Android Studio Emulator vb. kullanılabilir mi?<br /> → Proxidize, 4G mobile proxy kurmayı mümkün kılıyor<br /> → Bir sunucuya 50 adet 4G dongle takmak<br /> → Her sunucuda 50~100 Android cihazı emüle etmek <br /> → Bu istasyonları 5 şehre kurmak <br /> → Güçlü komutlarla bu istasyonları yönetmek </p>

12 yorum

 
xguru 2021-12-06
<p>- Bot tespitini aşmak: engellenmeden web scraping yapmanın yolu https://tr.news.hada.io/topic?id=5304<br /> <br /> Proxy'ler, scraping servisleri, anti-bot yazılımları vb. yukarıdaki yazıda iyi şekilde derlenmiştir.</p>
 
eajrezz 2021-12-06
<p>Harika bir hack!</p>
 
joone 2021-12-04
<p>https://www.diffbot.com/products/crawl/<br /> <br /> Tarama yapıp web sayfası scraping'i yapan bir hizmet de var. Scraping edilen veriler, gereksiz bilgiler hariç tutularak JSON olarak saklanıyor.</p>
 
benjamin 2021-11-29
<p>Ağzım açık kaldı...</p>
 
xguru 2021-11-29
<p>Bu arada tamamen farklı bir konu ama.. <br /> <br /> Google aramayı API olarak sunup satan https://serpapi.com/ gibi yerler de var. <br /> Ama burası Naver aramasını da API olarak sunup birlikte satıyor haha<br /> https://serpapi.com/naver-search-api<br /> <br /> Aylık 30 bin arama için $250 gibi şaşırtıcı? bir fiyat</p>
 
v08zbv8fvlkjasdflkj 2021-11-29
<p>Bu kadar pahalı olması şaşırtıcı mı? Pek kestiremiyorum.</p>
 
xguru 2021-11-29
<p>Evet, oldukça pahalı. Yine de ücretli proxy kullanmaya kıyasla öyle.<br /> API olduğu için engellenme endişesi olmadan kullanımı rahat.</p>
 
hentol 2021-11-29
<p>Yerli koşullarda bakınca, belli ölçüde veri sunan 0 TL’lik MVNO tarifeleri akla geliyor ama...<br /> Toplu abonelik yapmak zor olduğundan, bu da pek mümkün görünmüyor.</p>
 
xguru 2021-11-29
<p>Google Fi örneğinde, tek bir hatta en fazla 4 ek data SIM’i mümkün olduğu için bu da bir yöntem olabilir gibi görünüyor</p>
 
nallwhy 2021-11-29
<p>Daha önce naver'dan bir şeyleri scrape ederken<br /> AWS Lambda'da olmuyor ama GCP Functions'ta oluyordu diye hatırlıyorum,<br /> IP aralığı açık olduğu için böyledir diye düşünmüştüm ama öyle değilmiş galiba.</p>
 
honore 2021-11-29
<p>Zaten 1. yöntemle yapıyordum; diğer yöntemler neler var diye baktım ama... aklıma bile gelmemişti.</p>
 
xguru 2021-11-29
<p>Aslında 1 numaradaki Lambda+Puppeteer da o şekilde yapılırsa fena olmayabilir,<br /> ama sondaki Proxidize yöntemiyle karşılaştırıldığında muhtemelen scraping ölçeğine göre maliyet farkı olacaktır.<br /> Daha büyük hacim gerektiğinde Proxidize daha istikrarlı olur gibi, ama basitçe yapmak için 1 numara da kötü görünmüyor. <br /> <br /> Sonda tanıtılan https://proxidize.com/ ilginçmiş. <br /> Kendi 4G mobil proxy'nizi oluşturup yönetmenizi sağlayan bir donanım+yazılım çözümü.<br /> 5 dongle'lı sürüm $399'mış. Kullanıcıların ülke listesinde Kore'yi de gördüğüme göre kullanmak mümkün gibi?<br /> <br /> CGNAT kadar olmasa da, yazılım proxy havuzunu tamamen yöneten Scrapoxy gibi çözümler de var.<br /> - Scrapoxy - web crawler'ları için proxy havuzu yönetim aracı https://tr.news.hada.io/topic?id=2308</p&gt;