Spaces:
Build error
Build error
File size: 1,024 Bytes
8c3e275 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 | """Desktop wrapper for PageParse using pywebview.
Usage: python -m pageparse.desktop
Requires: pip install pywebview
"""
from __future__ import annotations
import threading
import webbrowser
import uvicorn
from pageparse.web import app as fastapi_app
def start_desktop_app() -> None:
try:
import webview
except ImportError:
print("pywebview not installed. Install with: pip install pageparse[desktop]")
print("Falling back to browser...")
webbrowser.open("http://127.0.0.1:8000")
return
def run_server():
uvicorn.run(fastapi_app, host="127.0.0.1", port=8000, log_level="warning")
server_thread = threading.Thread(target=run_server, daemon=True)
server_thread.start()
webview.create_window(
"PageParse",
"http://127.0.0.1:8000",
width=1280,
height=800,
min_size=(800, 600),
resizable=True,
text_select=True,
)
webview.start()
if __name__ == "__main__":
start_desktop_app()
|