Se você quer fazer Web Scraping como as grandes empresas (2021)
(incolumitas.com)Here is a summary of the key points from the article in Korean, formatted as a markdown bullet list:
Construindo uma infraestrutura de scraping em grande escala
- Executa o Headless Chrome no AWS Lambda para raspar milhões de resultados da SERP do Google por semana
- Ao invocar a função Lambda 3 vezes, é possível obter um novo IP público
- Ao invocar 1000 funções Lambda simultaneamente, é possível usar cerca de 250 IPs públicos
- Usando 16 regiões, é possível usar cerca de 4000 endereços IP públicos
- Porém, esse método só funciona em sites como Google, Bing e Amazon. Não funciona em sites que usam soluções antibot como DataDome, Akamai e Imperva
- As soluções antibot usam várias técnicas, como fingerprinting de navegador, detecção de mentiras e identificação de comportamentos diferentes dos humanos
- O motivo de ser difícil evitar a detecção de bots é que, na maioria dos casos, eles rodam na nuvem com Docker ou Kubernetes
Proposta de uma infraestrutura de scraping escalável e difícil de detectar
- Compra de 500 dispositivos Android baratos de 5 fabricantes
- Uso de planos de dados baratos e controle dos dispositivos com DeviceFarmer/stf
- Distribuição de 100 aparelhos em cada uma de 5 grandes cidades: Londres, Paris, Boston, Frankfurt e LA
- Instalação do Android Go leve e alternância do modo avião a cada 5 minutos para mudar o endereço IP
- Os IPs móveis de 4G/5G/LTE não podem ser bloqueados. Como muitos usuários os compartilham, nem o Instagram pode bloquear 200 mil pessoas em LA
- É necessário manipular em nível de kernel eventos como orientação e movimento do dispositivo
Melhoria: emulação de Android
- Uso de emuladores como Android-x86 no VirtualBox, Bluestacks e Android Studio
- Mas existem muitas técnicas de detecção de emulação (redpill baseado em navegador, varredura de porta adb, detecção de ID de anúncios, detecção de login social etc.)
- Conexão de dongles 4G ao servidor para uso direto pelos emuladores Android
- Implantação de 1 servidor de scraping potente em cada uma das 5 grandes cidades, com 50 dongles conectados em cada um
- Execução de 50 a 100 emuladores Android em cada servidor
- Coordenação das 5 estações de scraping com um servidor simples de controle de comandos
Opinião do GN⁺
- Usar dispositivos reais parece ter custo de gerenciamento alto e limitações de escalabilidade. O uso de emuladores parece ser uma alternativa realista.
- Porém, a tecnologia de detecção de emuladores também continua evoluindo, então não parece seguro assumir que apenas usar um emulador será suficiente. Atualizações e melhorias contínuas serão necessárias.
- Usar IPs móveis de 4G/5G é uma boa ideia. No entanto, não se pode descartar a possibilidade de a operadora bloquear dispositivos específicos ou ajustar os planos.
- Além de evitar o uso de IPs de datacenter, criar padrões de comportamento semelhantes aos humanos também parece ajudar a evitar a detecção de bots. Em vez de coleta massiva por automação, vale considerar uma abordagem de coleta lenta com concorrência limitada.
- Também vale considerar o uso de navegadores comerciais antidetecção, como Multilogin ou GoLogin. No entanto, existe a questão do custo de licenciamento.
Ainda não há comentários.