YouTubeのAPIを使用してPythonプログラムを構築し、一部のチャンネルの変更を検出しました。.exeをsqlite3データベースを含む.exeに変換する
Project/
classes/
Database.py
database/
project.db
main.py
マイmain.pyプログラムの連絡先のYouTube API初めて、私のDatabaseクラスのインスタンスを使用して.dbファイルにいくつかの情報を格納します。
は、ここで私は私のプログラムを整理する方法です。
次に、特定の時間間隔でYouTube APIに問い合わせて、.dbファイルの内容とサーバーの応答の違いを確認します。
プロジェクトを.exeにエクスポートして、同僚と共有しようとしていますが、cx_Freezeがうまく動作しません。
マイmain.py:
# IMPORT
import sys
sys.path.insert(0, 'classes/')
from Database import Database
import urllib.request
import json
import re
マイDatabase.py:
import sys
sys.path.insert(0, '../database/')
import sqlite3
マイsetup.py:
型付け:
python3 setup.py build
結果の興味深い部分:
running build
running build_exe
...
Missing modules:
? __main__ imported from bdb, pdb
? _dummy_threading imported from dummy_threading
? _frozen_importlib imported from importlib, importlib.abc
? _frozen_importlib_external imported from importlib, importlib._bootstrap, importlib.abc
? _winapi imported from subprocess
? _winreg imported from platform
? java.lang imported from platform
? msvcrt imported from getpass, subprocess
? nt imported from ntpath, os, shutil
? nturl2path imported from urllib.request
? org.python.core imported from copy, pickle
? os.path imported from os, pkgutil, py_compile, tracemalloc, unittest, unittest.util
? vms_lib imported from platform
? winreg imported from mimetypes, platform, urllib.request
This is not necessarily a problem - the modules may not be needed on this platform.
creating directory build/exe.macosx-10.6-intel-3.6/lib
Copying data from package collections...
Copying data from package email...
Copying data from package encodings...
Copying data from package html...
Copying data from package http...
Copying data from package importlib...
Copying data from package json...
Copying data from package logging...
Copying data from package pydoc_data...
Copying data from package sqlite3...
Copying data from package unittest...
Copying data from package urllib...
Copying data from package xml...
...
copying database/project.db -> build/exe.macosx-10.6-intel-3.6/project.db
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/objdump: 'database/project.db': The file was not recognized as a valid object file.
fatal error: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/otool: internal objdump command failed
生成されたフォルダが含まれています
Project (with the icon "exec" on my system, but no .exe extension)
project.db (not in a database/ folder, just side by side with the rest)
lib/
Python (with the icon "exec" on my system, but no .exe extension)
そのシステム(Windowsの10)でこれをテストする場合、最初に彼がしなければなりません拡張子 ".exe"を "Project"ファイルに手動で追加するか、フォルダとして表示され、それを実行すると "このアプリケーションは実行できません。 nあなたのPC "。
なぜ動作しないのですか?あなたは何か間違っていますか?
ありがとうございました!
'objdump'を実行すべきではありません。これはcx_freezeのバグのようです。 –
どうすればいいですか? cx_freezeを再インストールしますか?何を使って、醸造? – SlickKiss