mirror of
https://github.com/RicterZ/nhentai.git
synced 2026-04-08 10:40:22 +02:00
feat: remove --cookie/--useragent, update README for token auth
- Remove --cookie and --useragent CLI parameters - Update README: replace cookie/UA setup guide with --token - Update favorites auth check message - Bump version to 2.0.7 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
24
README.rst
24
README.rst
@@ -52,26 +52,11 @@ For a self-contained installation, use `pipx <https://github.com/pipxproject/pip
|
||||
=====
|
||||
Usage
|
||||
=====
|
||||
**⚠️IMPORTANT⚠️**: To bypass Cloudflare, you should use ``--cookie`` and ``--useragent`` options to store your cookie and user-agent.
|
||||
**⚠️IMPORTANT⚠️**: Authentication is required. Get your API token from your account settings page and save it:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
doujinshi-dl --useragent "USER AGENT of YOUR BROWSER"
|
||||
doujinshi-dl --cookie "YOUR COOKIE"
|
||||
|
||||
**NOTE:**
|
||||
|
||||
- The format of the cookie is ``"csrftoken=TOKEN; sessionid=ID; cf_clearance=CLOUDFLARE"``
|
||||
- ``cf_clearance`` cookie and useragent must be set if you encounter "blocked by cloudflare captcha" error. Make sure you use the same IP and useragent as when you got it
|
||||
|
||||
| To get csrftoken and sessionid, first login to your account in a web browser, then:
|
||||
| (Chrome) |ve| |ld| More tools |ld| Developer tools |ld| Application |ld| Storage |ld| Cookies |ld| your mirror URL
|
||||
| (Firefox) |hv| |ld| Web Developer |ld| Web Developer Tools |ld| Storage |ld| Cookies |ld| your mirror URL
|
||||
|
|
||||
|
||||
.. |hv| unicode:: U+2630 .. https://www.compart.com/en/unicode/U+2630
|
||||
.. |ve| unicode:: U+22EE .. https://www.compart.com/en/unicode/U+22EE
|
||||
.. |ld| unicode:: U+2014 .. https://www.compart.com/en/unicode/U+2014
|
||||
doujinshi-dl --token "YOUR_API_TOKEN"
|
||||
|
||||
*The default download folder will be the path where you run the command (%cd% or $PWD).*
|
||||
|
||||
@@ -185,9 +170,7 @@ Other options:
|
||||
folder when generated CBZ or PDF file
|
||||
--regenerate regenerate the cbz or pdf file if exists
|
||||
--zip package into a single zip file
|
||||
--cookie COOKIE set cookie to bypass Cloudflare captcha
|
||||
--useragent, --user-agent USERAGENT
|
||||
set useragent to bypass Cloudflare captcha
|
||||
--token TOKEN set API token for authentication
|
||||
--language LANGUAGE set default language to parse doujinshis
|
||||
--clean-language set DEFAULT as language to parse doujinshis
|
||||
--save-download-history
|
||||
@@ -197,7 +180,6 @@ Other options:
|
||||
clean download history
|
||||
--template VIEWER_TEMPLATE
|
||||
set viewer template
|
||||
--legacy use legacy searching method
|
||||
|
||||
======
|
||||
Mirror
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
__version__ = '2.0.6'
|
||||
__version__ = '2.0.7'
|
||||
__author__ = 'RicterZ'
|
||||
__email__ = 'ricterzheng@gmail.com'
|
||||
|
||||
@@ -162,12 +162,8 @@ def cmd_parser():
|
||||
parser.add_argument('--zip', action='store_true', help='Package into a single zip file')
|
||||
|
||||
# site options
|
||||
parser.add_argument('--cookie', type=str, dest='cookie',
|
||||
help='set cookie to bypass Cloudflare captcha')
|
||||
parser.add_argument('--token', type=str, dest='token',
|
||||
help='set API token for authentication (takes priority over cookie)')
|
||||
parser.add_argument('--useragent', '--user-agent', type=str, dest='useragent',
|
||||
help='set useragent to bypass Cloudflare captcha')
|
||||
help='set API token for authentication')
|
||||
parser.add_argument('--language', type=str, dest='language',
|
||||
help='set default language to parse doujinshis')
|
||||
parser.add_argument('--clean-language', dest='clean_language', action='store_true', default=False,
|
||||
@@ -217,30 +213,18 @@ def cmd_parser():
|
||||
sys.exit(0)
|
||||
|
||||
# --- set config ---
|
||||
if args.cookie is not None:
|
||||
logger.warning('--cookie is deprecated, please use --token instead.')
|
||||
c.CONFIG['cookie'] = args.cookie.strip()
|
||||
write_config()
|
||||
logger.info('Cookie saved.')
|
||||
|
||||
if args.token is not None:
|
||||
c.CONFIG['token'] = args.token.strip()
|
||||
write_config()
|
||||
logger.info('Token saved.')
|
||||
|
||||
if args.useragent is not None:
|
||||
logger.warning('--useragent is deprecated, please use --token instead.')
|
||||
c.CONFIG['useragent'] = args.useragent.strip()
|
||||
write_config()
|
||||
logger.info('User-Agent saved.')
|
||||
|
||||
if args.language is not None:
|
||||
c.CONFIG['language'] = args.language
|
||||
write_config()
|
||||
logger.info(f'Default language now set to "{args.language}"')
|
||||
# TODO: search without language
|
||||
|
||||
if any([args.cookie, args.token, args.useragent, args.language]):
|
||||
if any([args.token, args.language]):
|
||||
sys.exit(0)
|
||||
|
||||
if args.proxy is not None:
|
||||
@@ -271,7 +255,7 @@ def cmd_parser():
|
||||
|
||||
if args.favorites:
|
||||
if not c.CONFIG.get('cookie') and not c.CONFIG.get('token'):
|
||||
logger.warning('Authentication has not been set, please use `doujinshi-dl --token \'TOKEN\'` or `--cookie \'COOKIE\'` to set it.')
|
||||
logger.warning('Token has not been set, please use `doujinshi-dl --token \'TOKEN\'` to set it.')
|
||||
sys.exit(1)
|
||||
|
||||
if args.file:
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
[tool.poetry]
|
||||
name = "doujinshi-dl"
|
||||
version = "2.0.6"
|
||||
version = "2.0.7"
|
||||
description = "doujinshi downloader"
|
||||
authors = ["Ricter Z <ricterzheng@gmail.com>"]
|
||||
license = "MIT"
|
||||
|
||||
Reference in New Issue
Block a user