pyinstaller打包exe

main
Zhangzhichao@123 2 days ago
parent 0dc332397b
commit e15b9b95fd

@ -0,0 +1,13 @@
pyinstaller --onefile ^
--icon ./douyin.icon ^
--add-data "E:/workspace/live-digital-avatar/live-digital-avatar-chat/venv/Lib/site-packages/py_mini_racer;py_mini_racer" ^
--add-data "E:/workspace/live-digital-avatar/live-digital-avatar-chat/venv/Lib/site-packages/betterproto;betterproto" ^
--add-data "E:/workspace/live-digital-avatar/live-digital-avatar-chat/venv/Lib/site-packages/betterproto-2.0.0b6.dist-info;betterproto-2.0.0b6.dist-info" ^
--add-data "E:/workspace/live-digital-avatar/live-digital-avatar-chat/venv/Lib/site-packages/grpclib;grpclib" ^
--add-data "E:/workspace/live-digital-avatar/live-digital-avatar-chat/sign.js;." ^
--add-data "E:/workspace/live-digital-avatar/live_chat.db;." ^
--add-binary "E:/workspace/live-digital-avatar/live-digital-avatar-chat/venv/Lib/site-packages/py_mini_racer/mini_racer.dll;." ^
--add-binary "E:/workspace/live-digital-avatar/live-digital-avatar-chat/venv/Lib/site-packages/py_mini_racer/icudtl.dat;." ^
--add-binary "E:/workspace/live-digital-avatar/live-digital-avatar-chat/venv/Lib/site-packages/py_mini_racer/snapshot_blob.bin;." ^
--name chat ^
main.py

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

@ -1,12 +1,23 @@
import os
import sqlite3 import sqlite3
import sys
from multiprocessing import Queue from multiprocessing import Queue
from settings import sqlite_file from settings import sqlite_file
from queue import Empty from queue import Empty
def resource_path(relative_path, base_dir='.'):
# PyInstaller打包后会把文件放到临时文件夹 _MEIPASS
try:
base_path = sys._MEIPASS
except AttributeError:
base_path = os.path.abspath(base_dir)
return os.path.join(base_path, relative_path)
class LiveChatConfig: class LiveChatConfig:
def __init__(self): def __init__(self):
self.conn = sqlite3.connect(sqlite_file) self.conn = sqlite3.connect(resource_path(sqlite_file, '..'))
self.conn.execute("PRAGMA journal_mode=WAL;") self.conn.execute("PRAGMA journal_mode=WAL;")
def _query_config(self, key): def _query_config(self, key):

@ -20,7 +20,7 @@ from py_mini_racer import MiniRacer
from protobuf.douyin import * from protobuf.douyin import *
from message_processor import * from message_processor import *
from helper import PromptQueue from helper import resource_path, PromptQueue
from settings import live_talking_host, Backend from settings import live_talking_host, Backend
@ -201,7 +201,8 @@ class DouyinLiveWebFetcher:
f"&user_unique_id=7319483754668557238&im_path=/webcast/im/fetch/&identity=audience" f"&user_unique_id=7319483754668557238&im_path=/webcast/im/fetch/&identity=audience"
f"&need_persist_msg_count=15&insert_task_id=&live_reason=&room_id={self.room_id}&heartbeatDuration=0") f"&need_persist_msg_count=15&insert_task_id=&live_reason=&room_id={self.room_id}&heartbeatDuration=0")
signature = generateSignature(wss) script_file = resource_path('sign.js')
signature = generateSignature(wss, script_file)
wss += f"&signature={signature}" wss += f"&signature={signature}"
headers = { headers = {
@ -382,7 +383,6 @@ class DouyinLiveWebReply:
continue continue
prompt_data = self.queue.get(False) prompt_data = self.queue.get(False)
print(self.queue.qsize())
if prompt_data is not None: if prompt_data is not None:
# live_chat: 弹幕 # live_chat: 弹幕
prompt, live_chat = prompt_data prompt, live_chat = prompt_data

Binary file not shown.

Binary file not shown.

Binary file not shown.

@ -1,7 +1,7 @@
from liveMan import DouyinLiveWebFetcher, DouyinLiveWebReply from liveMan import DouyinLiveWebFetcher, DouyinLiveWebReply
from argparse import ArgumentParser from argparse import ArgumentParser
from helper import PromptQueue from helper import PromptQueue
from multiprocessing import Process, Event from multiprocessing import Process, Event, freeze_support
def parse_args(): def parse_args():
@ -22,6 +22,7 @@ def reply_user_chat_content(queue):
if __name__ == '__main__': if __name__ == '__main__':
freeze_support()
args = parse_args() args = parse_args()
queue = PromptQueue(1000) queue = PromptQueue(1000)

@ -1,6 +1,6 @@
sqlite_file = 'live_chat.db' sqlite_file = 'live_chat.db'
live_talking_host = 'http://192.168.10.96:8020' live_talking_host = 'http://192.168.10.96:8010'
class Backend: class Backend:
backend_host = 'http://192.168.10.25:9909' backend_host = 'http://192.168.10.25:9909'

Loading…
Cancel
Save