xtn-tools-pro 1.0.0.4.6__py3-none-any.whl → 1.0.0.4.7__py3-none-any.whl
Sign up to get free protection for your applications and to get access to all the features.
- xtn_tools_pro/task_pro/go_fun.py +64 -25
- {xtn_tools_pro-1.0.0.4.6.dist-info → xtn_tools_pro-1.0.0.4.7.dist-info}/METADATA +1 -1
- {xtn_tools_pro-1.0.0.4.6.dist-info → xtn_tools_pro-1.0.0.4.7.dist-info}/RECORD +6 -6
- {xtn_tools_pro-1.0.0.4.6.dist-info → xtn_tools_pro-1.0.0.4.7.dist-info}/LICENSE +0 -0
- {xtn_tools_pro-1.0.0.4.6.dist-info → xtn_tools_pro-1.0.0.4.7.dist-info}/WHEEL +0 -0
- {xtn_tools_pro-1.0.0.4.6.dist-info → xtn_tools_pro-1.0.0.4.7.dist-info}/top_level.txt +0 -0
xtn_tools_pro/task_pro/go_fun.py
CHANGED
@@ -73,43 +73,82 @@ class GoFun:
|
|
73
73
|
return
|
74
74
|
|
75
75
|
# 共享任务队列
|
76
|
-
processes_list = []
|
77
76
|
manager = multiprocessing.Manager()
|
78
77
|
download_queue = multiprocessing.Queue()
|
79
78
|
upload_queue = multiprocessing.Queue()
|
80
79
|
proxies_dict = manager.dict()
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
80
|
+
|
81
|
+
processes_list = []
|
82
|
+
processes_item_info = {
|
83
|
+
"_download_and_upload_task": {
|
84
|
+
"target": self._download_and_upload_task,
|
85
|
+
"name": "_download_and_upload_task",
|
86
|
+
"args": (download_queue, upload_queue, proxies_dict, self.__ini_info, logger),
|
87
|
+
},
|
88
|
+
"_go_task_fun_task": {
|
89
|
+
"target": self._go_task_fun_task,
|
90
|
+
"name": "_go_task_fun_task",
|
91
|
+
"args": (download_queue, upload_queue, proxies_dict, self.__ini_info, go_task_function, logger),
|
92
|
+
},
|
93
|
+
}
|
94
|
+
|
95
|
+
for p_item in processes_item_info.values():
|
96
|
+
task_process = multiprocessing.Process(target=p_item["target"], name=p_item["name"], args=p_item["args"])
|
97
|
+
processes_list.append(task_process)
|
98
|
+
task_process.start()
|
96
99
|
|
97
100
|
while True:
|
101
|
+
time.sleep(10)
|
98
102
|
for p in processes_list:
|
99
103
|
# 检查子进程是否存活
|
100
104
|
logger.info(f"{p.is_alive()} {p.name} {p.pid} {p}")
|
101
105
|
if not p.is_alive():
|
102
106
|
print(f"Worker {p.name} is dead. Restarting...")
|
103
|
-
# 进程死掉,重新启动
|
104
|
-
# processes.remove(p)
|
105
|
-
# new_p = multiprocessing.Process(target=worker, args=(f"Worker-{len(processes) + 1}",))
|
106
|
-
# processes.append(new_p)
|
107
|
-
# new_p.start()
|
108
|
-
|
109
|
-
time.sleep(10)
|
110
107
|
|
111
|
-
download_task_process.join()
|
112
108
|
|
109
|
+
# 进程死掉,重新启动
|
110
|
+
# processes.remove(p)
|
111
|
+
# new_p = multiprocessing.Process(target=worker, args=(f"Worker-{len(processes) + 1}",))
|
112
|
+
# processes.append(new_p)
|
113
|
+
# new_p.start()
|
114
|
+
#
|
115
|
+
# time.sleep(10)
|
116
|
+
|
117
|
+
# download_task_process.join()
|
118
|
+
|
119
|
+
|
120
|
+
# download_task_process = multiprocessing.Process(target=self._download_and_upload_task,
|
121
|
+
# name="_download_and_upload_task",
|
122
|
+
# args=(download_queue, upload_queue, proxies_dict,
|
123
|
+
# self.__ini_info, logger))
|
124
|
+
# processes_list.append(download_task_process)
|
125
|
+
# download_task_process.start()
|
126
|
+
|
127
|
+
# # 根据配置启动任务
|
128
|
+
# if go_task_function:
|
129
|
+
# go_task_fun_process = multiprocessing.Process(target=self._go_task_fun_task,
|
130
|
+
# name="_go_task_fun_task",
|
131
|
+
# args=(download_queue, upload_queue, proxies_dict,
|
132
|
+
# self.__ini_info, go_task_function, logger))
|
133
|
+
# processes_list.append(go_task_fun_process)
|
134
|
+
# go_task_fun_process.start()
|
135
|
+
|
136
|
+
# while True:
|
137
|
+
# time.sleep(11)
|
138
|
+
# for p in processes_list:
|
139
|
+
# # 检查子进程是否存活
|
140
|
+
# logger.info(f"{p.is_alive()} {p.name} {p.pid} {p}")
|
141
|
+
# if not p.is_alive():
|
142
|
+
# print(f"Worker {p.name} is dead. Restarting...")
|
143
|
+
# 进程死掉,重新启动
|
144
|
+
# processes.remove(p)
|
145
|
+
# new_p = multiprocessing.Process(target=worker, args=(f"Worker-{len(processes) + 1}",))
|
146
|
+
# processes.append(new_p)
|
147
|
+
# new_p.start()
|
148
|
+
|
149
|
+
# time.sleep(10)
|
150
|
+
|
151
|
+
# download_task_process.join()
|
113
152
|
|
114
153
|
def __get_external_ip(self, logger):
|
115
154
|
"""
|
@@ -125,7 +164,7 @@ class GoFun:
|
|
125
164
|
except Exception as e:
|
126
165
|
logger.critical(f"获取当前网络ip{e}")
|
127
166
|
|
128
|
-
def _download_and_upload_task(self, download_queue, upload_queue, proxies_dict, ini_info,logger):
|
167
|
+
def _download_and_upload_task(self, download_queue, upload_queue, proxies_dict, ini_info, logger):
|
129
168
|
"""
|
130
169
|
使用两个线程 打开 获取任务、回写任务
|
131
170
|
:param queue:
|
@@ -10,7 +10,7 @@ xtn_tools_pro/proxy/XiaoXiangProxy.py,sha256=45SsMZDc-3Ta4THX38vScjaeRBJSp420AJw
|
|
10
10
|
xtn_tools_pro/proxy/__init__.py,sha256=WRwh6s2lruMu5buh0ejo9EK54kWT_VQhCsFGNFAmcyo,418
|
11
11
|
xtn_tools_pro/proxy/proxy.py,sha256=No6E1pFY5yx2F4976pXPrLtq-QEVp79KupzcufjSN58,8703
|
12
12
|
xtn_tools_pro/task_pro/__init__.py,sha256=nK3U47hWwE1H875ieEToH9r-jzXHS-PXk8cDstOvRE8,418
|
13
|
-
xtn_tools_pro/task_pro/go_fun.py,sha256=
|
13
|
+
xtn_tools_pro/task_pro/go_fun.py,sha256=l-VQZFf87y-rgq10dgCSFnzYjsXw90N9Hs6SRDUshJg,16876
|
14
14
|
xtn_tools_pro/utils/__init__.py,sha256=I1_n_NP23F2lBqlF4EOlnOdLYxM8M4pbn63UhJN1hRE,418
|
15
15
|
xtn_tools_pro/utils/crypto.py,sha256=RZ5AET4udlraACWMeNF-17JiZ2R6Ahb47_j4tjkV7LE,3190
|
16
16
|
xtn_tools_pro/utils/file_utils.py,sha256=VfdIxog4s1UW5NpKkCvQsUs9qHjLoNCnstZbnftkT4w,2046
|
@@ -19,8 +19,8 @@ xtn_tools_pro/utils/log.py,sha256=3zbKpWNEdU9bOzi7E-CUt4M0cTewCAfxjp8WjxCN9-M,10
|
|
19
19
|
xtn_tools_pro/utils/retry.py,sha256=0wjHsR5DBBKpv4naMfxiky8kprrZes4WURIfFQ4H708,1657
|
20
20
|
xtn_tools_pro/utils/sql.py,sha256=EAKzbkZP7Q09j15Gm6o0_uq0qgQmcCQT6EAawbpp4v0,6263
|
21
21
|
xtn_tools_pro/utils/time_utils.py,sha256=TUtzG61PeVYXhaQd6pBrXAdlz7tBispNIRQRcGhE2No,4859
|
22
|
-
xtn_tools_pro-1.0.0.4.
|
23
|
-
xtn_tools_pro-1.0.0.4.
|
24
|
-
xtn_tools_pro-1.0.0.4.
|
25
|
-
xtn_tools_pro-1.0.0.4.
|
26
|
-
xtn_tools_pro-1.0.0.4.
|
22
|
+
xtn_tools_pro-1.0.0.4.7.dist-info/LICENSE,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
23
|
+
xtn_tools_pro-1.0.0.4.7.dist-info/METADATA,sha256=1jz_Avcu6z9s1Yt-5SzIf5Yclsu2W1fHX7f5tzI6bGk,455
|
24
|
+
xtn_tools_pro-1.0.0.4.7.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
|
25
|
+
xtn_tools_pro-1.0.0.4.7.dist-info/top_level.txt,sha256=jyB3FLDEr8zE1U7wHczTgIbvUpALhR-ULF7RVEO7O2U,14
|
26
|
+
xtn_tools_pro-1.0.0.4.7.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|