Prezados,
Boa Tarde!!, estou com dificuldades para gerar o arquivo EXE do meu
programa Python , ja tentei diveros tutoriais e nao tive sucesso, segue
abaixo o meu ambiente
Sistema operacional Windows 8.1
Anaconda 2 (Estou desenvolvendo no Jupyter Notebook )
Python 2.7 (Tive que usar esta versao devido a problemas com uma aplicação
que estava desenvolvendo)
Instalei para tentar gerar o Executavel o pyexe e o PyInstaller , segui
varios tutoriais porem sem sucesso.
O Meu aplicativo tem interface grafica e estou usando o tkinter , outro
detalhe e que tenho 2 arquivos porque um eu estou usando para armazenar as
classes e chamo elas pelo aplicativo principal pelo import, ja tentei em
arquivo unico sem sucesso, a aplicação esta funcionando 100%.
Codigo do arquivo principal [interface.py]
# coding: utf-8
from Tkinter import *
from tkFileDialog import askopenfilename
from compactador import *
import tkMessageBox
from threading import Thread
class Aplicacao:
def __init__(self, master):
self.frame = Frame(master)
self.frame.pack()
self.botao_adicionar = Button(self.frame)
self.botao_adicionar["text"] = "Adicionar"
self.botao_adicionar["command"] = self.adicionar
self.botao_adicionar["bd"] = 3
self.botao_adicionar["font"] = ("Arial", 12)
self.botao_adicionar.pack(pady=10, padx=30, side="left")
self.botao_deletar = Button(self.frame)
self.botao_deletar["text"] = "Deletar"
self.botao_deletar["command"] = self.deletar
self.botao_deletar["bd"] = 3
self.botao_deletar["font"] = ("Arial", 12)
self.botao_deletar.pack(padx=30, side="right")
self.frame2 = Frame(master)
self.frame2.pack()
self.sby = Scrollbar(self.frame2)
self.sby.pack(side=RIGHT, fill= Y)
self.sbx = Scrollbar(self.frame2, orient=HORIZONTAL)
self.sbx.pack(side=BOTTOM, fill=X)
self.listbox = Listbox(self.frame2, width=60, height=20, selectmode =
EXTENDED)
self.listbox.pack()
self.listbox.config(yscrollcommand=self.sby.set)
self.sby.config(command=self.listbox.yview)
self.listbox.config(xscrollcommand=self.sbx.set)
self.sbx.config(command=self.listbox.xview)
self.frame3 = Frame(master)
self.frame3.pack()
self.botao_compactar = Button(self.frame3)
self.botao_compactar["text"] = "Compactar"
self.botao_compactar["command"] = self.compactar
self.botao_compactar["bd"] = 3
self.botao_compactar["font"] = ("Arial", 12)
self.botao_compactar.pack(pady=10)
def adicionar(self):
nome_arquivo = askopenfilename()
if nome_arquivo != "" :
self.listbox.insert(END, nome_arquivo)
def deletar(self):
items = self.listbox.curselection()
if len(items) ==0:
tkMessageBox.showinfo("Compactador", "Selecione pelo menos um
item")
else:
pos = 0
for i in items:
item_pos = int(i) - pos
self.listbox.delete(item_pos, item_pos)
pos = pos + 1
def compactar(self):
lista_arquivos = self.listbox.get(0, END)
if len(lista_arquivos) == 0:
tkMessageBox.showinfo("Compactador","Adicione arquivos para
serem compactados")
return
def executar():
self.botao_compactar.configure(state=DISABLED)
compactador = Compactador()
compactador.compactar(lista_arquivos)
self.botao_compactar.configure(state=NORMAL)
t = Thread(target=executar)
t.start()
root = Tk()
root.title("Compactador de Arquivos")
root.iconbitmap(default="icone.ico")
root.geometry("600x500")
root.resizable(width = FALSE, height = FALSE)
Aplicacao(root)
root.mainloop()
este e o arquivo que estou usando para importar a minha classe de
compactação [compactador.py]
# -*- coding: utf-8 -*-
import zipfile
import os.path
class Compactador:
def compactar(self, lista_arquivos):
arquivo_zip = zipfile.ZipFile("arquivo.zip", "w")
for arquivo in lista_arquivos:
if(os.path.isfile(arquivo) and os.path.exists(arquivo)):
base = os.path.basename(arquivo)
arquivo_zip.write(arquivo, base)
arquivo_zip.close()
Poderiam me ajudar?
--
---
Você está recebendo esta mensagem porque se inscreveu no grupo "PUG-MG" dos
Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um
e-mail para [email protected].
Visite este grupo em https://groups.google.com/group/python-mg.
Para obter mais opções, acesse https://groups.google.com/d/optout.