# Python: Web Scraping — Estudo _Fonte: project-based-learning_ --- ## šŸ“š Recursos | Tutorial | Stack | NĆ­vel | |----------|-------|-------| | [Mining Twitter Data](https://marcobonzanini.com/2015/03/02/mining-twitter-data-with-python-part-1/) | Python, Twitter API | Iniciante | | [Scrapy + MongoDB](https://realpython.com/blog/python/web-scraping-with-scrapy-and-mongodb/) | Scrapy, MongoDB | IntermediĆ”rio | | [Selenium WebDriver](http://www.byperth.com/2018/04/25/guide-web-scraping-101-what-you-need-to-know-and-how-to-scrape-with-python-selenium-webdriver/) | Selenium | IntermediĆ”rio | | [BeautifulSoup](https://medium.com/@nishantsahoo.in/which-movie-should-i-watch-5c83a3c0f5b1) | BeautifulSoup | Iniciante | ## šŸŽÆ AplicaƧƵes para Mundo Telecom 1. **Scraping de editais** (jĆ” fazemos com Python, mas podemos evoluir) - Usar Scrapy + MongoDB em vez de requests simples - Adicionar Selenium para sites com JS pesado 2. **Monitoramento de concorrentes** (preƧos, serviƧos) 3. **Automação de portais pĆŗblicos** ## šŸ“ Notas de Estudo ### Scrapy + MongoDB - Scrapy Ć© um framework completo (nĆ£o só uma lib) - Spiders, Items, Pipelines — arquitetura robusta - MongoDB como storage: schema-free, ideal para dados semi-estruturados - Middleware para rate limiting, retry, proxies ### Selenium - NecessĆ”rio para SPAs e sites com autenticação JS - Headless mode para servidores - WebDriver + BeautifulSoup = combinação poderosa - Cuidado: mais lento que requests/Scrapy puro ### Boas PrĆ”ticas (aprendido) - Sempre usar `robots.txt` check - Rate limiting (time.sleep, middleware) - Rotação de User-Agent - Cache de requisiƧƵes (evitar banimento) - Logging estruturado --- ## āœ… Progresso - [ ] Twitter Data Mining - [ ] Scrapy + MongoDB - [ ] Selenium WebDriver - [ ] BeautifulSoup