playwright 경로 수정 및 패키지 포함. spec 수정
This commit is contained in:
parent
2a9ce02d0e
commit
02d9a37be1
|
|
@ -1,3 +1,5 @@
|
|||
|
||||
|
||||
from playwright.sync_api import sync_playwright
|
||||
import random
|
||||
import logging
|
||||
|
|
|
|||
43
build.spec
43
build.spec
|
|
@ -1,43 +0,0 @@
|
|||
# -*- mode: python ; coding: utf-8 -*-
|
||||
|
||||
|
||||
a = Analysis(
|
||||
['build.py'],
|
||||
pathex=[],
|
||||
binaries=[],
|
||||
datas=[],
|
||||
hiddenimports=[],
|
||||
hookspath=[],
|
||||
hooksconfig={},
|
||||
runtime_hooks=[],
|
||||
excludes=[],
|
||||
noarchive=False,
|
||||
)
|
||||
pyz = PYZ(a.pure)
|
||||
|
||||
exe = EXE(
|
||||
pyz,
|
||||
a.scripts,
|
||||
[],
|
||||
exclude_binaries=True,
|
||||
name='build',
|
||||
debug=False,
|
||||
bootloader_ignore_signals=False,
|
||||
strip=False,
|
||||
upx=True,
|
||||
console=True,
|
||||
disable_windowed_traceback=False,
|
||||
argv_emulation=False,
|
||||
target_arch=None,
|
||||
codesign_identity=None,
|
||||
entitlements_file=None,
|
||||
)
|
||||
coll = COLLECT(
|
||||
exe,
|
||||
a.binaries,
|
||||
a.datas,
|
||||
strip=False,
|
||||
upx=True,
|
||||
upx_exclude=[],
|
||||
name='build',
|
||||
)
|
||||
|
|
@ -4,3 +4,5 @@ port = 27017
|
|||
user = root
|
||||
password = 1234
|
||||
|
||||
[Playwright]
|
||||
PlaywrightBrowsersPath = ./Lib/site-packages/my_playwright_browsers
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -0,0 +1,11 @@
|
|||
import os
|
||||
import subprocess
|
||||
import sys
|
||||
|
||||
# 가상 환경 내 site-packages 경로 설정
|
||||
playwright_path = os.path.join(sys.prefix, 'Lib', 'site-packages', 'playwright', 'browsers')
|
||||
os.environ['PLAYWRIGHT_BROWSERS_PATH'] = playwright_path
|
||||
|
||||
# Playwright 설치
|
||||
subprocess.run([sys.executable, '-m', 'pip', 'install', 'playwright'], check=True)
|
||||
subprocess.run(['playwright', 'install'], check=True)
|
||||
19
main.py
19
main.py
|
|
@ -11,7 +11,6 @@ import atexit
|
|||
import platform, os, sys
|
||||
|
||||
from login import login
|
||||
import sys
|
||||
from navigate import navigate_to_new_product_registration
|
||||
from modify_products import modify_products
|
||||
from database import setup_database
|
||||
|
|
@ -26,6 +25,22 @@ from PyQt5 import QtCore, QtWidgets
|
|||
from logger_module import setup_logger
|
||||
import logging
|
||||
|
||||
def set_playwright_path():
|
||||
# 패킹된 애플리케이션의 임시 디렉터리 경로를 확인
|
||||
if getattr(sys, 'frozen', False) and hasattr(sys, '_MEIPASS'):
|
||||
# PyInstaller 패킹 후 실행 시
|
||||
base_path = sys._MEIPASS
|
||||
playwright_path = os.path.join(base_path, 'playwright', 'browsers')
|
||||
|
||||
else:
|
||||
# 로컬 개발 환경
|
||||
base_path = os.path.dirname(__file__)
|
||||
playwright_path = os.path.join(base_path, 'Lib', 'site-packages', 'playwright', 'browsers')
|
||||
|
||||
# Playwright 브라우저 경로 설정
|
||||
os.environ['PLAYWRIGHT_BROWSERS_PATH'] = playwright_path
|
||||
print(f"Playwright browsers path set to: {playwright_path}")
|
||||
|
||||
# Windows SetThreadExecutionState API를 사용하여 절전 모드 방지
|
||||
def prevent_sleep_mode():
|
||||
"""
|
||||
|
|
@ -199,6 +214,6 @@ def main():
|
|||
|
||||
if __name__ == "__main__":
|
||||
CURRENT_VERSION = "1.0.0"
|
||||
|
||||
set_playwright_path()
|
||||
logger = setup_logger('default_logger', 'application.log', level=logging.DEBUG)
|
||||
main()
|
||||
|
|
@ -20,6 +20,7 @@ a = Analysis(
|
|||
(os.path.join(spec_dir, 'Lib', 'site-packages', 'paddle', 'libs', '*.dll'), 'paddle\\libs'),
|
||||
(os.path.join(spec_dir, 'Lib', 'site-packages', 'selenium_stealth'), 'selenium_stealth'),
|
||||
(os.path.join(spec_dir, 'Lib', 'site-packages', 'fake_useragent'), 'fake_useragent'),
|
||||
(os.path.join(spec_dir, 'Lib', 'site-packages', 'playwright'), 'playwright'),
|
||||
(os.path.join(spec_dir, 'config.ini'), '.'),
|
||||
(os.path.join(spec_dir, 'Percenty_SS_Code.json'), '.'),
|
||||
(os.path.join(spec_dir, 'NotoSansKR-Bold.ttf'), '.'),
|
||||
|
|
|
|||
Loading…
Reference in New Issue