Skip to content

Commit

Permalink
pip ve exe branchlarını bir araya getir
Browse files Browse the repository at this point in the history
  • Loading branch information
KebabLord committed Dec 24, 2022
1 parent 6ad26f4 commit df8049b
Show file tree
Hide file tree
Showing 7 changed files with 67 additions and 9 deletions.
Binary file added docs/TurkAnimu.ico
Binary file not shown.
3 changes: 3 additions & 0 deletions docs/build_exe.bat
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
;; Windows için PyInstaller ile build: terminal tabanlı tek dosya exe
cd ..
pyinstaller --noconfirm --onefile --console --icon "docs\TurkAnimu.ico" --name "TurkAnimu" "turkanime.py"
43 changes: 43 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
[tool.poetry]
name = "turkanime-cli"
version = "7.0.4"
description = "Türkanime video oynatıcı ve indirici"
authors = ["Junicchi <[email protected]>"]
readme = "README.md"
license = "CC-BY-NC-ND-4.0"
repository = "https://github.com/kebablord/turkanime-indirici"
keywords = ["turkanime","turk","anime","downloader"]

classifiers = [
"Environment :: Console",
"Programming Language :: Python :: 3.6",
"Programming Language :: Python :: 3.7",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9"
]

packages = [
{ include = "turkanime_api" }
]

[tool.poetry.dependencies]
python = ">=3.6,<4"
youtube_dl = ">=2021.0.0"
questionary = "*"
selenium = ">=3.141.0"
bs4 = ">=0.0.1"
easygui = ">=0.98.2"
rich = ">=9.5.1"
requests = "*"
py7zr = "*"

[tool.poetry.dev-dependencies]

[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"

[tool.poetry.scripts]
# Publish sırasında buraya kopyalanmalı
# ./turkanime.py -> turkanime_api/cli/turkanime.py
turkanime = 'turkanime_api.cli.turkanime:run'
18 changes: 15 additions & 3 deletions turkanime.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
""" TürkAnimu Downloader v7 """
from os import path,mkdir
from os import path,mkdir,name,environ
from sys import exit as kapat
from time import sleep
from atexit import register
Expand All @@ -11,6 +11,10 @@
from turkanime_api import AnimeSorgula,Anime,DosyaManager,gereksinim_kontrol
from turkanime_api import elementi_bekle,webdriver_hazirla,prompt_tema,clear

dosya = DosyaManager()
sep = ";" if name=="nt" else ":"
environ["PATH"] += sep + dosya.ROOT + sep

with Progress(SpinnerColumn(), '[progress.description]{task.description}', BarColumn(bar_width=40)) as progress:
task = progress.add_task("[cyan]Sürücü başlatılıyor..", start=False)
gereksinim_kontrol(progress)
Expand Down Expand Up @@ -63,7 +67,7 @@
while True:
if "izle" in islem:
sorgu.mark_bolumler(seri_slug,bolumler,islem="izlendi")
previous = sorgu.son_bolum if previous == None else previous
previous = sorgu.son_bolum if previous is None else previous
clear()
secilen = select(
message='Bölüm seç',
Expand All @@ -75,7 +79,7 @@
previous = set_prev(secilen)
else:
sorgu.mark_bolumler(seri_slug,bolumler,islem="indirildi")
previous = sorgu.son_bolum if previous == None else previous
previous = sorgu.son_bolum if previous is None else previous
clear()
secilen = checkbox(
message = "Bölüm seç",
Expand Down Expand Up @@ -142,3 +146,11 @@

elif "Kapat" in islem:
break


""" Poetry script'leri modül gibi çalışmaya zorladığından
limitasyonu aşmak için kirli bir çözüm.
"""
run = lambda: None
if __name__=="__main__":
run()
3 changes: 2 additions & 1 deletion turkanime_api/anime.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from os import system,path,mkdir
from os import system,path,mkdir,environ,name
import json
from bs4 import BeautifulSoup as bs4
from rich.progress import Progress, BarColumn, SpinnerColumn
Expand Down Expand Up @@ -78,6 +78,7 @@ def __init__(self,driver,seri,bolumler):
self.bolumler = bolumler
self.dosya = DosyaManager()
self.otosub = self.dosya.ayar.getboolean("TurkAnime","manuel fansub")
environ["PATH"] += ";" if name=="nt" else ":" + self.dosya.ROOT

def indir(self):
self.dosya.tazele()
Expand Down
5 changes: 2 additions & 3 deletions turkanime_api/dosyalar.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
DownloadGereksinimler()
- Gereksinimlerin indirilmesini ve paketten çıkarılmasını sağlar.
"""
from os import path,mkdir,replace,rename,remove,system
from os import path,mkdir,replace,rename,remove,system,getcwd
from struct import calcsize
from configparser import ConfigParser
import json
Expand All @@ -26,15 +26,14 @@
TransferSpeedColumn,TimeRemainingColumn
)


class DosyaManager():
""" Yazılımın konfigürasyon ve indirilenler klasörünü yönet
- Windows'ta varsayılan dizin: Belgelerim/TurkAnimu
- Linux'ta varsayılan dizin: /home/$USER/TurkAnimu
"""
def __init__(self):
if path.isdir(".git"): # Git reposundan çalıştırıldığında.
self.ROOT = "."
self.ROOT = getcwd()
else: # Pip modülü veya Exe olarak çalıştırıldığında.
self.ROOT = path.join(path.expanduser("~"), "TurkAnimu" )

Expand Down
4 changes: 2 additions & 2 deletions turkanime_api/tools.py
Original file line number Diff line number Diff line change
Expand Up @@ -86,13 +86,13 @@ def webdriver_hazirla(progress=None):
progress.stop()
input("Yazılım firefox'un kurulu olduğu dizini tespit edemedi\n"+
"Manual olarak Program Files'ten firefox.exe'yi"+
"seçmek için yönlendirileceksiniz.\n\n( Devam etmek için entera basın)")
"seçmek için yönlendirileceksiniz.\n\n( Devam etmek için entera basın )")
from easygui import fileopenbox
firefox_dizin=fileopenbox("/")
if firefox_dizin:
dosya.ayar.set("TurkAnime","firefox konumu",firefox_dizin)
dosya.save_ayarlar()
input("Programı yeniden başlatmalısınız. (Devam etmek için entera basın)")
input("Programı yeniden başlatmalısınız. \n\n( Devam etmek için entera basın )")
kapat()
return webdriver.Firefox(
profile, options=options,
Expand Down

0 comments on commit df8049b

Please sign in to comment.