@@ -3,11 +3,23 @@ def default_jm_debug(topic: str, msg: str):
33 print (f'{ format_ts ()} :【{ topic } 】{ msg } ' )
44
55
6+ def default_postman_constructor (session , ** kwargs ):
7+ from common import Postmans
8+
9+ kwargs .setdefault ('impersonate' , 'chrome110' )
10+ kwargs .setdefault ('headers' , JmModuleConfig .headers ())
11+
12+ if session is True :
13+ return Postmans .new_session (** kwargs )
14+
15+ return Postmans .new_postman (** kwargs )
16+
17+
618class JmModuleConfig :
719 # 网站相关
820 PROT = "https://"
921 DOMAIN = None
10- JM_REDIRECT_URL = f'{ PROT } jm365.xyz /3YeBdF' # 永久網域,怕走失的小伙伴收藏起来
22+ JM_REDIRECT_URL = f'{ PROT } jm365.work /3YeBdF' # 永久網域,怕走失的小伙伴收藏起来
1123 JM_PUB_URL = f'{ PROT } jmcomic2.bet'
1224 JM_CDN_IMAGE_URL_TEMPLATE = PROT + 'cdn-msp.{domain}/media/photos/{photo_id}/{index:05}{suffix}' # index 从1开始
1325 JM_IMAGE_SUFFIX = ['.jpg' , '.webp' , '.png' , '.gif' ]
@@ -40,6 +52,7 @@ class JmModuleConfig:
4052 # debug
4153 enable_jm_debug = True
4254 debug_executor = default_jm_debug
55+ postman_constructor = default_postman_constructor
4356
4457 @classmethod
4558 def domain (cls , postman = None ):
@@ -84,15 +97,17 @@ def jm_debug(cls, topic: str, msg: str):
8497 def disable_jm_debug (cls ):
8598 cls .enable_jm_debug = False
8699
100+ @classmethod
101+ def new_postman (cls , session = False , ** kwargs ):
102+ return cls .postman_constructor (session , ** kwargs )
103+
87104 @classmethod
88105 def get_jmcomic_url (cls , postman = None ):
89106 """
90107 访问禁漫的永久网域,从而得到一个可用的禁漫网址
91108 @return: https://jm-comic2.cc
92109 """
93- if postman is None :
94- from common import Postmans
95- postman = Postmans .new_session ()
110+ postman = postman or cls .new_postman (session = True )
96111
97112 resp = postman .get (cls .JM_REDIRECT_URL )
98113 url = resp .url
@@ -105,9 +120,7 @@ def get_jmcomic_domain_all(cls, postman=None):
105120 访问禁漫发布页,得到所有禁漫的域名
106121 @return:['18comic.vip', ..., 'jm365.xyz/ZNPJam'], 最后一个是【APP軟件下載】
107122 """
108- if postman is None :
109- from common import Postmans
110- postman = Postmans .get_impl_clazz ('cffi' ).create ()
123+ postman = postman or cls .new_postman (session = True )
111124
112125 resp = postman .get (cls .JM_PUB_URL )
113126 if resp .status_code != 200 :
0 commit comments