xtn-tools-pro 1.0.0.4.0__py3-none-any.whl → 1.0.0.4.2__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -51,7 +51,7 @@ class GoFun:
51
51
  raise Exception(f"ini_dict 配置 {server_k} 不存在")
52
52
 
53
53
  logger.debug(
54
- f"\n当前设置配置如下:\n\t功能函数重启间隔:{restart_time};进程数:{processes_num};线程数:{thread_num}\n\t代理更新间隔:{update_proxies_time};回写间隔{upload_task_tine}\n")
54
+ f"\n无敌框架来咯~~~当前设置配置如下:\n\t功能函数重启间隔:{restart_time};进程数:{processes_num};线程数:{thread_num}\n\t代理更新间隔:{update_proxies_time};回写间隔{upload_task_tine}\n")
55
55
 
56
56
  if port:
57
57
  task_host = f"http://{host}:{port}"
@@ -61,7 +61,6 @@ class GoFun:
61
61
  download_url = task_host + "/filter_server/phone/get"
62
62
  upload_url = task_host + "/filter_server/phone/update"
63
63
  update_proxy_url = task_host + f"/filter_server/proxy/random/get?taskType={task}&limit=1"
64
- logger.debug("无敌框架来咯~")
65
64
 
66
65
  external_ip = self.__get_external_ip(self.logger)
67
66
 
@@ -139,7 +138,7 @@ class GoFun:
139
138
  while True:
140
139
  try:
141
140
  qsize = download_queue.qsize()
142
- logger.info(f"当前队列剩余任务数:{qsize}")
141
+ logger.info(f"当前队列剩余任务数:{qsize}")
143
142
  if qsize >= 10:
144
143
  time.sleep(2)
145
144
  continue
@@ -156,9 +155,9 @@ class GoFun:
156
155
  if not phone_item.isdigit(): # 判断是否全是整数(不包括小数点或负号)
157
156
  continue
158
157
  download_queue.put(task_item)
159
- logger.warning(f"成功获取任务个数:{len(result_list)}")
158
+ logger.warning(f"成功获取任务个数:{len(result_list)}")
160
159
  except Exception as e:
161
- logger.critical(f"获取任务请求异常:{e}")
160
+ logger.critical(f"获取任务请求异常:{e}")
162
161
  time.sleep(2)
163
162
 
164
163
  def __upload_task(self, upload_queue, ini_info, logger):
@@ -234,13 +233,13 @@ class GoFun:
234
233
  status_code = resp.status_code
235
234
  result_list = json_data.get("result", [])
236
235
  if not result_list or status_code != 200:
237
- logger.critical(f"获取代理响应异常:{status_code} {len(result_list)} {json_data}")
236
+ logger.critical(f"获取代理响应异常:{status_code} {len(result_list)} {json_data}")
238
237
  time.sleep(2)
239
238
 
240
239
  proxies_dict['http'] = 'http://' + random.choice(result_list)
241
240
  proxies_dict['https'] = 'http://' + random.choice(result_list)
242
241
  proxies_dict['status'] = True
243
- logger.warning(f"成功获取代理:{proxies_dict}")
242
+ logger.warning(f"成功获取代理:{proxies_dict}")
244
243
 
245
244
  if not update_proxies_time:
246
245
  # 一直执行 不退出
@@ -249,7 +248,7 @@ class GoFun:
249
248
  time.sleep(update_proxies_time)
250
249
  proxies_dict['status'] = False
251
250
  except Exception as e:
252
- logger.critical(f"获取代理请求异常:{e}")
251
+ logger.critical(f"获取代理请求异常:{e}")
253
252
  time.sleep(2)
254
253
 
255
254
  def _go_task_fun_task(self, download_queue, upload_queue, proxies_dict, ini_info, go_task_function, logger):
@@ -277,11 +276,13 @@ class GoFun:
277
276
  try:
278
277
  if not processes_start_list:
279
278
  go_task_fun_cnt += 1
280
- logger.debug(
279
+ logger.info(
281
280
  f"第{go_task_fun_cnt}次,进程数:{processes_num},线程数:{thread_num},等待{restart_time}秒强制下一次")
282
281
  for i in range(processes_num):
283
282
  p = Process(target=self._run_with_timeout,
284
- args=(download_queue, upload_queue, proxies_dict, thread_num, go_task_function))
283
+ args=(
284
+ download_queue, upload_queue, proxies_dict, thread_num, logger,
285
+ go_task_function))
285
286
  processes_start_list.append(p)
286
287
  p.start()
287
288
 
@@ -299,7 +300,7 @@ class GoFun:
299
300
  except Exception as e:
300
301
  pass
301
302
 
302
- def _run_with_timeout(self, download_queue, upload_queue, proxies_dict, thread_num, go_task_function):
303
+ def _run_with_timeout(self, download_queue, upload_queue, proxies_dict, thread_num, logger, go_task_function):
303
304
  caller = inspect.stack()[1] # 获取调用者的调用栈信息
304
305
  caller_name = caller.function # 获取调用者的函数名
305
306
  caller_class = caller.frame.f_locals.get('self', None) # 获取调用者的类实例
@@ -308,7 +309,7 @@ class GoFun:
308
309
 
309
310
  with concurrent.futures.ThreadPoolExecutor(max_workers=thread_num) as executor:
310
311
  # 提交10个函数到线程池中执行
311
- futures = [executor.submit(go_task_function, download_queue, upload_queue, proxies_dict) for _ in
312
+ futures = [executor.submit(go_task_function, download_queue, upload_queue, proxies_dict, logger) for _ in
312
313
  range(thread_num)]
313
314
 
314
315
  # 等待所有线程完成
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: xtn-tools-pro
3
- Version: 1.0.0.4.0
3
+ Version: 1.0.0.4.2
4
4
  Summary: xtn 开发工具
5
5
  Author: xtn
6
6
  Author-email: czw011122@gmail.com
@@ -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=6Hono3GY61HcMank72lQxGsb5FeT1AZlyj_9Ddl23JY,14071
13
+ xtn_tools_pro/task_pro/go_fun.py,sha256=755YOHCo-D6wY4tP7OiB1DPtkd1dR_zqO6kNZ72LtmQ,14141
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=XZChGrKWgAz42o_gFi_d7DL28svF1OvAw7NS_xkIgnQ,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.0.dist-info/LICENSE,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
23
- xtn_tools_pro-1.0.0.4.0.dist-info/METADATA,sha256=pXYma9JqJsaCSe1PJsFlObvgELAZJoB4WnVS7JZK_W0,455
24
- xtn_tools_pro-1.0.0.4.0.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
25
- xtn_tools_pro-1.0.0.4.0.dist-info/top_level.txt,sha256=jyB3FLDEr8zE1U7wHczTgIbvUpALhR-ULF7RVEO7O2U,14
26
- xtn_tools_pro-1.0.0.4.0.dist-info/RECORD,,
22
+ xtn_tools_pro-1.0.0.4.2.dist-info/LICENSE,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
23
+ xtn_tools_pro-1.0.0.4.2.dist-info/METADATA,sha256=dRKFzOGZju8xXUUclNlxsn3ssPObIC3q3i-gvpV3G5A,455
24
+ xtn_tools_pro-1.0.0.4.2.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
25
+ xtn_tools_pro-1.0.0.4.2.dist-info/top_level.txt,sha256=jyB3FLDEr8zE1U7wHczTgIbvUpALhR-ULF7RVEO7O2U,14
26
+ xtn_tools_pro-1.0.0.4.2.dist-info/RECORD,,