/animes-downloader

Automação em python focada em anime e mangas

Primary LanguagePythonApache License 2.0Apache-2.0

Projeto em andamento ...

Download de animes & mangás com automação python

Projeto idealizado e desenvolvido por mim, qualquer dúvida fique a vontade para entrar contato comigo você pode me encontrar aqui

Até o momento o projeto possui três opções:

  1. Baixar episódios da Saiko Animes (com ou sem acesso premium) Tutorial
  2. Baixar episódio da AnimeFire Tutorial
  3. Atualizar listas personalizadas de mangás no anilist Tutorial
  4. Adicionar mangás/animes no anilist Tutorial
  5. Baixar episódios Anitsu

Tecnologias utilizadas


Python Selenium

Baixe sua última versão do executável aqui

Dependências/Requisitos

Caso não queira fazer o passos a seguir manualmente. Apenas execute o Script Windows

É necessário ter o seguinte item para executar o projeto:

É recomendado a criação de ambiente virtual para execução do projeto, recomendo seguir os passos a seguir:

No linux:

  • Para criação do ambiente:
python3 -m venv env
  • Para ativar o ambiente:
. env/bin/activate

No windows:

  • Para criação do ambiente:
py -3 -m venv env
  • Para ativar o ambiente:
env\Scripts\activate

É preciso realizar a instalação das bibliotecas necessárias para executar o projeto. Todos as bibliotecas e suas versões estão no arquivo requirements

Para instalar as bibliotecas siga os passos:

ATENÇÃO Ative o seu ambiente virtual antes executar esses comandos!

Será criado o ambiente virtual python

No Linux:

env/bin/pip install -r requirements.txt

No windows:

env\Scripts\pip install -r requirements.txt

Páginas suportadas

Anime Manga Track List
Saikô Animes Br Mangás Anilist
AnimeFire.net
Anitsu

Baixar episódios da Saiko Animes

Nesta função é feita uma automação no navegador para baixar os episódios de animes do site Saikô Animes. Pode haver a necessidade de realizar login IMPORTANTE: o Saikô Animes apenas disponibiliza para download de apenas animes que estão em lançamento na temporada, para obter acesso a todos os anime é preciso ter uma conta no site e pagar o Saikô Pass.

Tutorial

Após executar o projeto, escolha o numero correspondente a esta função

Print

Em seguida será solicitado se deseja realizar o login. Sendo S ou s para sim e N ou n para não

Print

Lembrando que é apenas necessário login caso tenha pago o Saikô pass na sua conta.

Caso escolha para realizar o login, o navegador será aberto, mas preencha suas credencias diretamente no terminal.

Print

Após realizar o login, ou caso tenha escolhido não realizar login, será solicitado o nome do anime a ser pesquisado no site.

Print

Quando a pesquisa retornar mais de um resultado será solicitado digitar o numero correspondente ao resultado.

Print

Depois de selecionar qual resultado corresponde a sua pesquisa ou caso sua pesquisa retorna apenas 1 resultado, será exibido a lista de episódios, e solicitado que digite o intervalo de episódios que deseja baixar:

Print

Foi configurado o seguinte esquema para seleção dos episódios:

  • Caso deseje baixar apenas 1 episódio, digite apenas o número do episódio desejado, por exemplo, para baixar o episódio 1, basta digitar 1
  • Caso deseje baixar um intervalo de episódios, digite o número inicial seguido do - e após o número final, por exemplo, para baixar do episódio 1 até 10, basta digitar 1-10
  • Caso deseja baixar todos os episódios, basta digitar *

Após selecionar o intervalo de episódios desejado, o download será iniciado no navegador

Print

Após encerrado o download será exibido o tempo de execução para realizar os downloads

Print

O caminho padrão onde será salvo os vídeos é C:/Users/%USERNAME%/Videos

Baixar episódios do AnimeFire.net

Nesta função é feita uma automação no navegador para baixar os episódios de animes do site AnimeFire.net. Não há necessidade de realizar login.

Tutorial

Ao executar o arquivo main_cli, será exibida o seguinte:

Print

Escolha a opção 2 para selecionar para baixar episódios do AnimeFire.net

Será soliciado para que digite o nome do anime, então digite o nome do anime que deseja baixar

Print

Quando a pesquisa retornar mais de um resultado será solicitado digitar o numero correspondente ao resultado

Print

Depois de selecionar qual resultado corresponde a sua pesquisa ou caso sua pesquisa retorna apenas 1 resultado, será exibido a lista de episódios, e solicitado que digite o intervalo de episódios que deseja baixar:

Print

Foi configurado o seguinte esquema para seleção dos episódios:

  • Caso deseje baixar apenas 1 episódio, digite apenas o número do episódio desejado, por exemplo, para baixar o episódio 1, basta digitar 1
  • Caso deseje baixar um intervalo de episódios, digite o número inicial seguido do - e após o número final, por exemplo, para baixar do episódio 1 até 10, basta digitar 1-10
  • Caso deseja baixar todos os episódios, basta digitar *

Após selecionar o intervalo de episódios será solicitado a seleção da qualidade do vídeo, digite o numero correspondente a qualidade desejada:

Print

Após selecionar o intervalo de episódios, iniciará o carregamento do episódio, o que pode demorar um pouco.

Print

Logo em seguida é iniciado o download do vídeo:

Print

O caminho padrão onde será salvo os vídeos é C:/Users/%USERNAME%/Videos

OBSERVAÇÃO: Em certos animes, devido utilizar um player antigo, o script abrirá o navegador e realizara o download pelo navegador, é importantissímo que não meche no PC nesse momento pois pode acabar atrapalhando

Atualizar listas personalizadas de mangás no anilist

Nesta função é feita uma automação no navegador para criar listas personalizadas no anilist para salvar mangás com novo lançamentos de capítulos, mangas sem lançamento de capítulos e mangás que já encerrou o lançamento de capítulos. Inicialmente o script realiza a criação de 4 listas personalizadas com os seguintes nomes:

  • New Chaps Releases
  • Waiting New Chaps Releases
  • Finished Releases
  • Adult Label

OBSERVAÇÃO: É indispensável criar as listas com outros nomes, recomendo, recomendo a criação manual das listas.

Para o tutorial em vídeo acesse aqui

Inicialmente selecione a opção corresponte a está função:

Print

Após irá iniciar o chrome, e o terminal ficará pausado, vá para o chrome que acabou de abrir e realize o login e aguarde a tela inicial do anilist, após realizado isso volte para o terminal e apenas pressione qualquer tecla para continuar.

Como isso será iniciado a captura da lista dos mangás que estão na sua lista "Reading" e captura dos nomes alternativos, este processo demora um pouco, mas no final é criado um arquivo chamado "alt_names.txt", que será utilizado para pular esta etapa de captura dos nomes dos mangás. O arquivo será salvo no caminho padrão C:/Users/%USERNAME%/Documents

A próxima parte é onde será realizada busca do mangá no site leitor e comparado o ultimo capítulo do leitor com o ultimo capítulo atualizado no anilist, caso o mangá esteja com o mesmo número de capítulo tanto no anilis quanto no leitor será adicionado na lista "Waiting New Chaps Releases", caso o mangá esteja com o número de capítulo no leitor maior que o do anilist será adicionado na lista "New Chaps Releases", caso o mangá esteja finalizado no anilist e no leitor será adicionado na lista "Finished Releases".

Após finalizado basta fechar o terminal, mas antes de fechar verificar as mensagens do terminal

Print

Como podemos ver no print, teve mangá com erro, onde seria que ocorreu algum erro durante a execução, teve mangá não encontrado, onde mesmo com os nomes alternativos não foi possível encontrar no mangas chan. Para melhorar as chances de encotrar deve editar o arquivo alt_names.txt e adicionar mais nomes alternativos.

Print

Nesse arquivo cada linha, representa um mangá, onde primeiro vem o nome principal após o "--" vem o link dele no anilist após "||" vem o capitulo e após cada "||" vem os nomes alternativos, por exemplo para adicionar mais nomes alternativos, basta no final da linha, adicionar um espaço seguido de || e mais um espaço seguido do nome alternativo ficando assim:

Jiken-Jaken! -- /manga/101613/JikenJaken/ || 20/92 || Jiken-Jaken! || JikenJaken || Jiken Jaken

Com isso terá sua biblioteca muita mais organizada de maneira automática!

Print

Adicionar mangás/animes no anilist

Nesta função é realizada a automação para adicionar mangás/animes no anilist, obtendo os nomes e cápitulos/episódios via terminal ou via arquivo, e adiciona na lista "Reading" do anilist

O arquivo deve ser salvo com nome names.txt no caminho C:/Users/%USERNAME%/Documents

Siga o seguinte padrão: Nome da obra--quantidade de capitulos/episódios

Yamada-kun to Lv999 no Koi wo Suru--2
Satanophany--0