Este projeto é um script Python que faz o download automático de arquivos .zip de um site. Ele usa bibliotecas como requests, BeautifulSoup e tqdm para buscar e baixar os arquivos, exibindo uma barra de progresso durante o processo de download.
O projeto foi inspirado no site https://class.devsamurai.com.br/ que disponibilizou todo seu acervo para download. Os arquivos baixados podem estar sujeitos à restrições de direitos autorais, mas seu uso para fins pessoais é totalmente gratuito.
- Requisição a um site para obter links de arquivos
.zip. - Filtragem de links que terminam com
.zip. - Download automático de arquivos com a exibição de uma barra de progresso.
- Salvamento dos arquivos no diretório de execução do script.
Antes de rodar o script, você precisa ter o Python instalado na sua máquina e as dependências necessárias.
Caso você ainda não tenha o Python instalado, baixe e instale a versão mais recente de python.org.
É uma boa prática usar um ambiente virtual para evitar conflitos com o sistema. Você pode criar um ambiente virtual com os seguintes comandos:
python -m venv myenv
source myenv/bin/activate # No Linux/macOS
myenv\Scripts\activate # No WindowsDepois de ativar o ambiente virtual, os pacotes serão instalados nesse ambiente e não afetarão o Python global do sistema.
Você precisará instalar as seguintes bibliotecas Python:
requests: para fazer requisições HTTP.beautifulsoup4: para parsear o HTML da página e extrair links.tqdm: para exibir a barra de progresso durante o download.
Para instalar as dependências, rode o seguinte comando:
pip install -r requirements.txtPasso 1: Clonar o repositório Clone o repositório para a sua máquina local:
git clone https://github.com/oMaestro174/samurai-downloader.gitPasso 2: Rodar o Script Entre no diretório do projeto e execute o script:
cd samurai-downloader
python samurai-downloader.pyO script vai baixar todos os arquivos .zip encontrados no site e salvar na mesma pasta onde o script foi executado.
Você pode personalizar o diretório de download alterando o valor de download_path no código:
download_path = '/caminho/para/o/diretorio'Se você precisar usar um URL diferente, modifique o valor da variável site_url no código:
site_url = 'https://class.devsamurai.com.br/' # Substitua com a URL desejadaRequisição e Parsing: O script faz uma requisição à URL fornecida e utiliza o BeautifulSoup para extrair todos os links de arquivos .zip. Filtragem dos Links: Apenas os links que terminam com .zip são considerados. Download com Barra de Progresso: O arquivo é baixado em pedaços (chunks) e a barra de progresso é exibida usando a biblioteca tqdm. Exemplo de Saída Durante o download dos arquivos, você verá algo assim no terminal:
Baixando: Aulas ao Vivo.zip
Baixando: Backend - Dominando o NodeJS.zipE a barra de progresso aparecerá como:
Baixando: Aulas ao Vivo.zip: 100%|███████████████████████████████| 10.2M/10.2M [00:04<00:00, 2.45MB/s]Licença Este projeto está licenciado sob a Licença MIT.