mirror of
https://github.com/Yuvi9587/Kemono-Downloader.git
synced 2025-12-29 16:14:44 +00:00
Compare commits
2 Commits
7.6.1
...
9b34951f3b
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9b34951f3b | ||
|
|
b0c5dd4d39 |
@@ -127,7 +127,8 @@
|
|||||||
<p>Feel free to fork this repo and submit pull requests for bug fixes, new features, or UI improvements!</p>
|
<p>Feel free to fork this repo and submit pull requests for bug fixes, new features, or UI improvements!</p>
|
||||||
<h2>License</h2>
|
<h2>License</h2>
|
||||||
<p>This project is under the MIT Licence</p>
|
<p>This project is under the MIT Licence</p>
|
||||||
### Included Third-Party Tools
|
|
||||||
|
<h1>Included Third-Party Tools</h1>
|
||||||
|
|
||||||
This project includes a pre-compiled binary of `yt-dlp` for handling certain video downloads. `yt-dlp` is in the public domain. For more information or to get the latest version, please visit the official [yt-dlp GitHub repository](https://github.com/yt-dlp/yt-dlp).
|
This project includes a pre-compiled binary of `yt-dlp` for handling certain video downloads. `yt-dlp` is in the public domain. For more information or to get the latest version, please visit the official [yt-dlp GitHub repository](https://github.com/yt-dlp/yt-dlp).
|
||||||
|
|
||||||
|
|||||||
@@ -140,7 +140,7 @@ class EmptyPopupDialog (QDialog ):
|
|||||||
SCOPE_CREATORS ="Creators"
|
SCOPE_CREATORS ="Creators"
|
||||||
|
|
||||||
|
|
||||||
def __init__ (self ,user_data_path ,parent_app_ref ,parent =None ):
|
def __init__ (self ,app_base_dir ,parent_app_ref ,parent =None ):
|
||||||
super ().__init__ (parent )
|
super ().__init__ (parent )
|
||||||
self.parent_app = parent_app_ref
|
self.parent_app = parent_app_ref
|
||||||
|
|
||||||
@@ -148,7 +148,7 @@ class EmptyPopupDialog (QDialog ):
|
|||||||
|
|
||||||
self.setMinimumSize(int(400 * scale_factor), int(300 * scale_factor))
|
self.setMinimumSize(int(400 * scale_factor), int(300 * scale_factor))
|
||||||
self.current_scope_mode = self.SCOPE_CREATORS
|
self.current_scope_mode = self.SCOPE_CREATORS
|
||||||
self.user_data_path = user_data_path
|
self .app_base_dir =app_base_dir
|
||||||
|
|
||||||
app_icon =get_app_icon_object ()
|
app_icon =get_app_icon_object ()
|
||||||
if app_icon and not app_icon .isNull ():
|
if app_icon and not app_icon .isNull ():
|
||||||
@@ -336,7 +336,7 @@ class EmptyPopupDialog (QDialog ):
|
|||||||
"""
|
"""
|
||||||
# --- NEW BEHAVIOR ---
|
# --- NEW BEHAVIOR ---
|
||||||
# Pass the app_base_dir and a reference to the main app (for translations/theme)
|
# Pass the app_base_dir and a reference to the main app (for translations/theme)
|
||||||
dialog = UpdateCheckDialog(self.user_data_path, self.parent_app, self)
|
dialog = UpdateCheckDialog(self.app_base_dir, self.parent_app, self)
|
||||||
|
|
||||||
if dialog.exec_() == QDialog.Accepted:
|
if dialog.exec_() == QDialog.Accepted:
|
||||||
# --- MODIFIED: Get a list of profiles now ---
|
# --- MODIFIED: Get a list of profiles now ---
|
||||||
|
|||||||
@@ -21,10 +21,10 @@ class UpdateCheckDialog(QDialog):
|
|||||||
and allows the user to select multiple to check for updates.
|
and allows the user to select multiple to check for updates.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
def __init__(self, user_data_path, parent_app_ref, parent=None):
|
def __init__(self, app_base_dir, parent_app_ref, parent=None):
|
||||||
super().__init__(parent)
|
super().__init__(parent)
|
||||||
self.parent_app = parent_app_ref
|
self.parent_app = parent_app_ref
|
||||||
self.user_data_path = user_data_path
|
self.app_base_dir = app_base_dir
|
||||||
self.selected_profiles_list = [] # Will store a list of {'name': ..., 'data': ...}
|
self.selected_profiles_list = [] # Will store a list of {'name': ..., 'data': ...}
|
||||||
|
|
||||||
self._init_ui()
|
self._init_ui()
|
||||||
@@ -100,7 +100,7 @@ class UpdateCheckDialog(QDialog):
|
|||||||
|
|
||||||
def _load_profiles(self):
|
def _load_profiles(self):
|
||||||
"""Loads all .json files from the creator_profiles directory as checkable items."""
|
"""Loads all .json files from the creator_profiles directory as checkable items."""
|
||||||
appdata_dir = self.user_data_path
|
appdata_dir = os.path.join(self.app_base_dir, "appdata")
|
||||||
profiles_dir = os.path.join(appdata_dir, "creator_profiles")
|
profiles_dir = os.path.join(appdata_dir, "creator_profiles")
|
||||||
|
|
||||||
if not os.path.isdir(profiles_dir):
|
if not os.path.isdir(profiles_dir):
|
||||||
|
|||||||
@@ -339,7 +339,7 @@ class DownloaderApp (QWidget ):
|
|||||||
self.download_location_label_widget = None
|
self.download_location_label_widget = None
|
||||||
self.remove_from_filename_label_widget = None
|
self.remove_from_filename_label_widget = None
|
||||||
self.skip_words_label_widget = None
|
self.skip_words_label_widget = None
|
||||||
self.setWindowTitle("Kemono Downloader v7.6.1")
|
self.setWindowTitle("Kemono Downloader v7.6.0")
|
||||||
setup_ui(self)
|
setup_ui(self)
|
||||||
self._connect_signals()
|
self._connect_signals()
|
||||||
if hasattr(self, 'character_input'):
|
if hasattr(self, 'character_input'):
|
||||||
@@ -6617,7 +6617,7 @@ class DownloaderApp (QWidget ):
|
|||||||
self._tr("restore_pending_message_creator_selection",
|
self._tr("restore_pending_message_creator_selection",
|
||||||
"Please 'Restore Download' or 'Discard Session' before selecting new creators."))
|
"Please 'Restore Download' or 'Discard Session' before selecting new creators."))
|
||||||
return
|
return
|
||||||
dialog = EmptyPopupDialog(self.user_data_path, self)
|
dialog = EmptyPopupDialog(self.app_base_dir, self)
|
||||||
if dialog.exec_() == QDialog.Accepted:
|
if dialog.exec_() == QDialog.Accepted:
|
||||||
# --- NEW BATCH UPDATE LOGIC ---
|
# --- NEW BATCH UPDATE LOGIC ---
|
||||||
if hasattr(dialog, 'update_profiles_list') and dialog.update_profiles_list:
|
if hasattr(dialog, 'update_profiles_list') and dialog.update_profiles_list:
|
||||||
|
|||||||
111
structure.txt
111
structure.txt
@@ -1,111 +0,0 @@
|
|||||||
├── assets/
|
|
||||||
│ ├── Kemono.ico
|
|
||||||
│ ├── Kemono.png
|
|
||||||
│ ├── Ko-fi.png
|
|
||||||
│ ├── buymeacoffee.png
|
|
||||||
│ ├── discord.png
|
|
||||||
│ ├── github.png
|
|
||||||
│ ├── instagram.png
|
|
||||||
│ └── patreon.png
|
|
||||||
├── data/
|
|
||||||
│ ├── creators.json
|
|
||||||
│ └── dejavu-sans/
|
|
||||||
│ ├── DejaVu Fonts License.txt
|
|
||||||
│ ├── DejaVuSans-Bold.ttf
|
|
||||||
│ ├── DejaVuSans-BoldOblique.ttf
|
|
||||||
│ ├── DejaVuSans-ExtraLight.ttf
|
|
||||||
│ ├── DejaVuSans-Oblique.ttf
|
|
||||||
│ ├── DejaVuSans.ttf
|
|
||||||
│ ├── DejaVuSansCondensed-Bold.ttf
|
|
||||||
│ ├── DejaVuSansCondensed-BoldOblique.ttf
|
|
||||||
│ ├── DejaVuSansCondensed-Oblique.ttf
|
|
||||||
│ └── DejaVuSansCondensed.ttf
|
|
||||||
├── directory_tree.txt
|
|
||||||
├── main.py
|
|
||||||
├── src/
|
|
||||||
│ ├── __init__.py
|
|
||||||
│ ├── config/
|
|
||||||
│ │ ├── __init__.py
|
|
||||||
│ │ └── constants.py
|
|
||||||
│ ├── core/
|
|
||||||
│ │ ├── Hentai2read_client.py
|
|
||||||
│ │ ├── __init__.py
|
|
||||||
│ │ ├── allcomic_client.py
|
|
||||||
│ │ ├── api_client.py
|
|
||||||
│ │ ├── booru_client.py
|
|
||||||
│ │ ├── bunkr_client.py
|
|
||||||
│ │ ├── discord_client.py
|
|
||||||
│ │ ├── erome_client.py
|
|
||||||
│ │ ├── fap_nation_client.py
|
|
||||||
│ │ ├── manager.py
|
|
||||||
│ │ ├── mangadex_client.py
|
|
||||||
│ │ ├── nhentai_client.py
|
|
||||||
│ │ ├── pixeldrain_client.py
|
|
||||||
│ │ ├── rule34video_client.py
|
|
||||||
│ │ ├── saint2_client.py
|
|
||||||
│ │ ├── simpcity_client.py
|
|
||||||
│ │ ├── toonily_client.py
|
|
||||||
│ │ └── workers.py
|
|
||||||
│ ├── i18n/
|
|
||||||
│ │ ├── __init__.py
|
|
||||||
│ │ └── translator.py
|
|
||||||
│ ├── services/
|
|
||||||
│ │ ├── __init__.py
|
|
||||||
│ │ ├── drive_downloader.py
|
|
||||||
│ │ ├── multipart_downloader.py
|
|
||||||
│ │ └── updater.py
|
|
||||||
│ ├── ui/
|
|
||||||
│ │ ├── __init__.py
|
|
||||||
│ │ ├── assets.py
|
|
||||||
│ │ ├── classes/
|
|
||||||
│ │ │ ├── allcomic_downloader_thread.py
|
|
||||||
│ │ │ ├── booru_downloader_thread.py
|
|
||||||
│ │ │ ├── bunkr_downloader_thread.py
|
|
||||||
│ │ │ ├── discord_downloader_thread.py
|
|
||||||
│ │ │ ├── downloader_factory.py
|
|
||||||
│ │ │ ├── drive_downloader_thread.py
|
|
||||||
│ │ │ ├── erome_downloader_thread.py
|
|
||||||
│ │ │ ├── external_link_downloader_thread.py
|
|
||||||
│ │ │ ├── fap_nation_downloader_thread.py
|
|
||||||
│ │ │ ├── hentai2read_downloader_thread.py
|
|
||||||
│ │ │ ├── kemono_discord_downloader_thread.py
|
|
||||||
│ │ │ ├── mangadex_downloader_thread.py
|
|
||||||
│ │ │ ├── nhentai_downloader_thread.py
|
|
||||||
│ │ │ ├── pixeldrain_downloader_thread.py
|
|
||||||
│ │ │ ├── rule34video_downloader_thread.py
|
|
||||||
│ │ │ ├── saint2_downloader_thread.py
|
|
||||||
│ │ │ ├── simp_city_downloader_thread.py
|
|
||||||
│ │ │ └── toonily_downloader_thread.py
|
|
||||||
│ │ ├── dialogs/
|
|
||||||
│ │ │ ├── ConfirmAddAllDialog.py
|
|
||||||
│ │ │ ├── CookieHelpDialog.py
|
|
||||||
│ │ │ ├── CustomFilenameDialog.py
|
|
||||||
│ │ │ ├── DownloadExtractedLinksDialog.py
|
|
||||||
│ │ │ ├── DownloadHistoryDialog.py
|
|
||||||
│ │ │ ├── EmptyPopupDialog.py
|
|
||||||
│ │ │ ├── ErrorFilesDialog.py
|
|
||||||
│ │ │ ├── ExportLinksDialog.py
|
|
||||||
│ │ │ ├── ExportOptionsDialog.py
|
|
||||||
│ │ │ ├── FavoriteArtistsDialog.py
|
|
||||||
│ │ │ ├── FavoritePostsDialog.py
|
|
||||||
│ │ │ ├── FutureSettingsDialog.py
|
|
||||||
│ │ │ ├── HelpGuideDialog.py
|
|
||||||
│ │ │ ├── KeepDuplicatesDialog.py
|
|
||||||
│ │ │ ├── KnownNamesFilterDialog.py
|
|
||||||
│ │ │ ├── MoreOptionsDialog.py
|
|
||||||
│ │ │ ├── MultipartScopeDialog.py
|
|
||||||
│ │ │ ├── SinglePDF.py
|
|
||||||
│ │ │ ├── SupportDialog.py
|
|
||||||
│ │ │ ├── TourDialog.py
|
|
||||||
│ │ │ ├── __init__.py
|
|
||||||
│ │ │ └── discord_pdf_generator.py
|
|
||||||
│ │ └── main_window.py
|
|
||||||
│ └── utils/
|
|
||||||
│ ├── __init__.py
|
|
||||||
│ ├── command.py
|
|
||||||
│ ├── file_utils.py
|
|
||||||
│ ├── network_utils.py
|
|
||||||
│ ├── resolution.py
|
|
||||||
│ └── text_utils.py
|
|
||||||
├── structure.txt
|
|
||||||
└── yt-dlp.exe
|
|
||||||
Reference in New Issue
Block a user