项目优化。瘦身
This commit is contained in:
3
.gitignore
vendored
3
.gitignore
vendored
@@ -6,6 +6,7 @@ __pycache__/
|
|||||||
*.pyd
|
*.pyd
|
||||||
*.py[cod]
|
*.py[cod]
|
||||||
*$py.class
|
*$py.class
|
||||||
|
build.bat
|
||||||
|
|
||||||
# Distribution / packaging
|
# Distribution / packaging
|
||||||
.Python
|
.Python
|
||||||
@@ -128,6 +129,4 @@ dmypy.json
|
|||||||
|
|
||||||
# Cython debug symbols
|
# Cython debug symbols
|
||||||
cython_debug/
|
cython_debug/
|
||||||
|
|
||||||
build-tidevice.bat
|
build-tidevice.bat
|
||||||
build.bat
|
|
||||||
@@ -1,5 +1,3 @@
|
|||||||
# from getpass import fallback_getpass
|
|
||||||
|
|
||||||
|
|
||||||
# 设备模型
|
# 设备模型
|
||||||
class DeviceModel(object):
|
class DeviceModel(object):
|
||||||
|
|||||||
@@ -7,23 +7,24 @@
|
|||||||
- iproxy 守护:本地端口 + /status 探活,不通则自愈重启;连续失败达阈值才移除
|
- iproxy 守护:本地端口 + /status 探活,不通则自愈重启;连续失败达阈值才移除
|
||||||
"""
|
"""
|
||||||
import datetime
|
import datetime
|
||||||
|
import http.client
|
||||||
|
import json
|
||||||
import os
|
import os
|
||||||
import sys
|
|
||||||
import time
|
|
||||||
import threading
|
|
||||||
import subprocess
|
|
||||||
import socket
|
import socket
|
||||||
|
import subprocess
|
||||||
|
import sys
|
||||||
|
import threading
|
||||||
|
import time
|
||||||
from concurrent.futures import ThreadPoolExecutor
|
from concurrent.futures import ThreadPoolExecutor
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
from typing import Dict, Optional, List, Any
|
from typing import Dict, Optional
|
||||||
import platform
|
|
||||||
import psutil
|
import psutil
|
||||||
import http.client
|
|
||||||
import tidevice
|
import tidevice
|
||||||
import wda
|
import wda
|
||||||
from flask import json
|
|
||||||
from tidevice import Usbmux, ConnectionType
|
from tidevice import Usbmux, ConnectionType
|
||||||
from tidevice._device import BaseDevice
|
from tidevice._device import BaseDevice
|
||||||
|
|
||||||
from Entity.DeviceModel import DeviceModel
|
from Entity.DeviceModel import DeviceModel
|
||||||
from Entity.Variables import WdaAppBundleId, wdaScreenPort, wdaFunctionPort
|
from Entity.Variables import WdaAppBundleId, wdaScreenPort, wdaFunctionPort
|
||||||
from Module.FlaskSubprocessManager import FlaskSubprocessManager
|
from Module.FlaskSubprocessManager import FlaskSubprocessManager
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
import json
|
import json
|
||||||
|
import logging
|
||||||
import os
|
import os
|
||||||
import socket
|
import socket
|
||||||
import threading
|
import threading
|
||||||
@@ -7,24 +8,23 @@ import time
|
|||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
from queue import Queue
|
from queue import Queue
|
||||||
from typing import Any, Dict, List
|
from typing import Any, Dict, List
|
||||||
import anyio
|
|
||||||
from quart import Quart
|
|
||||||
from quart_cors import cors
|
|
||||||
|
|
||||||
from Entity import Variables
|
import anyio
|
||||||
from Utils.AiUtils import AiUtils
|
|
||||||
from Utils.IOSAIStorage import IOSAIStorage
|
|
||||||
from Utils.LogManager import LogManager
|
|
||||||
import wda
|
import wda
|
||||||
from quart import Quart, request, g
|
from quart import Quart, request, g
|
||||||
|
from quart_cors import cors
|
||||||
|
|
||||||
|
import Entity.Variables as ev
|
||||||
|
from Entity import Variables
|
||||||
from Entity.ResultData import ResultData
|
from Entity.ResultData import ResultData
|
||||||
|
from Entity.Variables import addModelToAnchorList, wdaFunctionPort
|
||||||
|
from Utils.AiUtils import AiUtils
|
||||||
from Utils.ControlUtils import ControlUtils
|
from Utils.ControlUtils import ControlUtils
|
||||||
|
from Utils.IOSAIStorage import IOSAIStorage
|
||||||
|
from Utils.JsonUtils import JsonUtils
|
||||||
|
from Utils.LogManager import LogManager
|
||||||
from Utils.ThreadManager import ThreadManager
|
from Utils.ThreadManager import ThreadManager
|
||||||
from script.ScriptManager import ScriptManager
|
from script.ScriptManager import ScriptManager
|
||||||
from Entity.Variables import addModelToAnchorList, wdaFunctionPort
|
|
||||||
import Entity.Variables as ev
|
|
||||||
from Utils.JsonUtils import JsonUtils
|
|
||||||
import logging
|
|
||||||
|
|
||||||
for name in ('werkzeug', 'werkzeug.serving'):
|
for name in ('werkzeug', 'werkzeug.serving'):
|
||||||
log = logging.getLogger(name)
|
log = logging.getLogger(name)
|
||||||
|
|||||||
@@ -1,17 +1,14 @@
|
|||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
import logging
|
|
||||||
import subprocess
|
|
||||||
import sys
|
|
||||||
import threading
|
|
||||||
import atexit
|
import atexit
|
||||||
import json
|
import json
|
||||||
import os
|
import os
|
||||||
import socket
|
import socket
|
||||||
|
import subprocess
|
||||||
|
import sys
|
||||||
|
import threading
|
||||||
import time
|
import time
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
from typing import Optional, Union, Dict, List
|
from typing import Optional, Union, Dict, List
|
||||||
|
|
||||||
import psutil
|
|
||||||
from Utils.LogManager import LogManager
|
from Utils.LogManager import LogManager
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -4,18 +4,14 @@ import os
|
|||||||
import sys
|
import sys
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
|
|
||||||
from asgiref.wsgi import WsgiToAsgi
|
|
||||||
from sympy import false
|
|
||||||
|
|
||||||
from Utils.AiUtils import AiUtils
|
|
||||||
from Utils.LogManager import LogManager
|
|
||||||
from hypercorn.asyncio import serve
|
from hypercorn.asyncio import serve
|
||||||
from hypercorn.config import Config
|
from hypercorn.config import Config
|
||||||
import sys
|
|
||||||
from pathlib import Path
|
|
||||||
from Module.DeviceInfo import DeviceInfo
|
from Module.DeviceInfo import DeviceInfo
|
||||||
from Module.FlaskSubprocessManager import FlaskSubprocessManager
|
from Module.FlaskSubprocessManager import FlaskSubprocessManager
|
||||||
|
from Utils.AiUtils import AiUtils
|
||||||
from Utils.DevDiskImageDeployer import DevDiskImageDeployer
|
from Utils.DevDiskImageDeployer import DevDiskImageDeployer
|
||||||
|
from Utils.LogManager import LogManager
|
||||||
|
|
||||||
if "IOSAI_PYTHON" not in os.environ:
|
if "IOSAI_PYTHON" not in os.environ:
|
||||||
base_path = Path(sys.argv[0]).resolve()
|
base_path = Path(sys.argv[0]).resolve()
|
||||||
@@ -78,7 +74,7 @@ if __name__ == "__main__":
|
|||||||
# 清空日志
|
# 清空日志
|
||||||
LogManager.clearLogs()
|
LogManager.clearLogs()
|
||||||
|
|
||||||
# main(sys.argv)
|
main(sys.argv)
|
||||||
|
|
||||||
# 添加iOS开发包到电脑上
|
# 添加iOS开发包到电脑上
|
||||||
deployer = DevDiskImageDeployer(verbose=True)
|
deployer = DevDiskImageDeployer(verbose=True)
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
import json
|
import json
|
||||||
import os
|
import os
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
from typing import Dict, Any
|
|
||||||
|
|
||||||
import portalocker as locker # ① 引入跨平台锁
|
import portalocker as locker # ① 引入跨平台锁
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,4 @@
|
|||||||
import os
|
import os
|
||||||
|
|
||||||
import cv2
|
import cv2
|
||||||
import numpy as np
|
import numpy as np
|
||||||
from typing import List, Tuple, Union, Optional
|
from typing import List, Tuple, Union, Optional
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
import requests
|
import requests
|
||||||
from Entity.Variables import prologueList, API_KEY
|
from Entity.Variables import prologueList, API_KEY
|
||||||
from Utils.IOSAIStorage import IOSAIStorage
|
from Utils.IOSAIStorage import IOSAIStorage
|
||||||
from Utils.JsonUtils import JsonUtils
|
|
||||||
from Utils.LogManager import LogManager
|
from Utils.LogManager import LogManager
|
||||||
|
|
||||||
BaseUrl = "https://crawlclient.api.yolozs.com/api/common/"
|
BaseUrl = "https://crawlclient.api.yolozs.com/api/common/"
|
||||||
|
|||||||
19
build.bat
19
build.bat
@@ -2,28 +2,31 @@
|
|||||||
setlocal
|
setlocal
|
||||||
cd /d E:\code\Python\iOSAi
|
cd /d E:\code\Python\iOSAi
|
||||||
|
|
||||||
REM ---- 1) 打包 ----
|
|
||||||
python -m nuitka Module\Main.py ^
|
python -m nuitka Module\Main.py ^
|
||||||
--standalone ^
|
--standalone ^
|
||||||
--msvc=latest ^
|
--msvc=latest ^
|
||||||
--windows-console-mode=disable ^
|
--windows-console-mode=disable ^
|
||||||
--output-filename=IOSAI ^
|
--output-filename=IOSAI ^
|
||||||
|
--jobs=8 ^
|
||||||
|
--lto=no ^
|
||||||
|
--assume-yes-for-downloads ^
|
||||||
--include-package=Module,Utils,Entity,script ^
|
--include-package=Module,Utils,Entity,script ^
|
||||||
--include-module=quart,quart_cors,wda,psutil,portalocker,cv2,lxml.etree,requests,urllib3,certifi,idna,setuptools,asgiref,hypercorn,h2,hpack,wsproto,priority,anyio,sniffio ^
|
--include-module=quart,quart_cors,wda,hypercorn,wsproto,anyio,sniffio ^
|
||||||
--include-data-dir=resources=resources ^
|
--include-data-dir=resources=resources ^
|
||||||
--include-data-dir=SupportFiles=SupportFiles ^
|
--include-data-dir=SupportFiles=SupportFiles ^
|
||||||
--include-data-files="resources/iproxy/*=resources/iproxy/" ^
|
--include-data-files="resources/iproxy/*=resources/iproxy/" ^
|
||||||
--include-data-files=resources/icon.ico=resources/icon.ico ^
|
--include-data-files=resources/icon.ico=resources/icon.ico ^Z
|
||||||
--jobs=20 ^
|
--windows-icon-from-ico=resources/icon.ico ^
|
||||||
--windows-icon-from-ico=resources/icon.ico
|
--noinclude-default-mode=nofollow ^
|
||||||
|
--nofollow-import-to=pytest,py.test,unittest,setuptools,doctest,IPython,pydoc ^
|
||||||
|
--nofollow-import-to=sympy,matplotlib
|
||||||
|
|
||||||
IF ERRORLEVEL 1 EXIT /B %ERRORLEVEL%
|
IF ERRORLEVEL 1 EXIT /B %ERRORLEVEL%
|
||||||
|
|
||||||
REM 2) 复制 sidecar venv 到 Main.dist 根目录(与 IOSAI.exe 同级)
|
rem ---- 复制 mini-python ----
|
||||||
rmdir /S /Q ".\Main.dist\python-rt" 2>nul
|
rmdir /S /Q ".\Main.dist\python-rt" 2>nul
|
||||||
xcopy /E /I /Y ".\Needed\mini-python" ".\Main.dist\python-rt\"
|
xcopy /E /I /Y ".\Needed\mini-python" ".\Main.dist\python-rt\"
|
||||||
rem ---- build done above ----
|
|
||||||
|
|
||||||
rem 强制删除根目录里会污染 sys.path 的同名包(目前只遇到 simplejson)
|
rem ---- 清理可能污染 sys.path 的包 ----
|
||||||
rmdir /s /q ".\Main.dist\simplejson" 2>nul
|
rmdir /s /q ".\Main.dist\simplejson" 2>nul
|
||||||
del /f /q ".\Main.dist\simplejson.*" 2>nul
|
del /f /q ".\Main.dist\simplejson.*" 2>nul
|
||||||
Reference in New Issue
Block a user