Executando verificação de segurança...
1

Webscraping com BeautifulSoup

A muito tempo, já tenho trabalhado em alguns projetos de WebScraping utilizando o Selenium webdriver em que tem como grande poder, simular ações humanas no navegador.

Recentemente passei a estudar BeautifulSoup do #python onde também é muito utilizado para WebScraping mas com uma abordagem diferente, utilizando-se do texto html da pagina para fazer a extração de dados. Achei muito interessante e fiz um primeiro projeto com isso, não somente utilizando o BeautifulSoup, como o lxml que ajuda e muito a fazer buscas no html utilizando o xPath.

Resumidamente o projeto consiste em consultar uma base de livros do site companhia das letras, e realizar a extração dos dados como titulo, preço, quantidade de paginas, formato... No final da execução, os dados são salvos em formato .csv

As informações que tirei para fazer o programa são do próprio site, ou seja, as informações que são carregadas para qualquer usuario, não fazendo o uso de senhas ou acessos especiais para conseguir acesso.

Abaixo deixo o programa no repositório do github caso queira dar uma olhada no projeto.

https://github.com/ParzivalMarcos/scrapingBeautifulSoupExample

Carregando publicação patrocinada...
1
1

Confesso que desconheço o termo "API force", no entanto, tive alguns percalsos enquanto desenvolvia o projeto, como por exemplo, o HTML não ser carregado diretamente com todas as informações sendo esse o trabalho do JavaScript do site. Sendo assim, pesquisando a fundo na pagina, peguei a chamada a API que o site faz para recuperar as informações e utilizei no código.
Esse processo todo foi de grande aprendizado pra mim, e espero que possa contribuir com mais alguém

1

Uma excelente alternativa ao Selenium é o Playwright. Recentemente utilizei a versão para .NET.

Antigamente cheguei a utilizar o Puppeteer Sharp.

Mas o seu caso se tornou o melhor e mais simples cenário possível, onde através de requisições é possível fazer o scrapping.
No .NET recomendo utilizar a classe HttpClient para isso.

1
1

Obrigado mesmo, seu projeto vai de encontro com algo que precisava mais nao sabia como sair do zero. Terei uma excelente jornada com o seu aprendizado.

1