Resumo: Este guia explica passo a passo como fazer web scraping do Booking.com do início ao fim em Python: extraindo resultados de pesquisa, páginas de hotéis, preços por noite e avaliações de hóspedes. São apresentados dois métodos complementares: um fluxo de trabalho do Selenium Wire para páginas renderizadas em JS e uma abordagem mais rápida que acede diretamente ao /dml/graphql , além de um manual anti-bloqueio, gestão de moedas e uma solução alternativa para o limite de paginação de cerca de 1.000 resultados.O Booking.com é o tipo de conjunto de dados ao qual as equipas de viagens e hotelaria recorrem constantemente: tarifas por noite em tempo real, posicionamento da concorrência, oferta por bairro, opinião dos hóspedes por propriedade. O problema é que nada disso é disponibilizado através de uma API aberta ao público em geral; por isso, se quiser obter esses dados programaticamente, acaba por ter de fazer algum tipo de web scraping do Booking.com por conta própria. Este tutorial mostra duas abordagens práticas em Python e associa-as às preocupações de produção que costumam surgir na segunda semana.
No momento da redação deste artigo, a Booking.com é uma das maiores plataformas de alojamento na web, com milhões de propriedades disponíveis para reserva, incluindo hotéis, resorts e estadias de curta duração. (Manteremos as contagens específicas de listagens aproximadas; os números públicos da empresa variam.) A plataforma é fortemente orientada por JavaScript e possui defesas anti-bot reais, por isso, scripts requests.get tendem a falhar antes de se tornarem úteis.
Vais ver como executar um scraper baseado em Selenium para resultados de pesquisa, como fazer engenharia reversa dos mesmos dados a partir do endpoint GraphQL interno, como extrair páginas de detalhes de hotéis, preços e avaliações, e como ultrapassar o limite de resultados com sitemaps e particionamento de consultas. O código é em Python 3.10+ e pressupõe que estejas familiarizado com o DevTools e seletores CSS.




