@KOT10

Как конвертировать файл python в exe?

Есть у меня специальный скрипт, который позволяет автоматизировать работу с группами вк. Написан в PyCharme и отлично выполняет свою работу. Я его делал на заказ, поэтому решил преобразовать в exe файл с помощью pyinstaller, делал это впервые. Но при конвертации возникла некая ошибка, которая мне непонятна, поэтому пришёл сюда. Ниже приложил ошибку и код. Программа и необходимый текстовый файл находился в одной папке с программой. Попробовал с другими скриптами - выдаёт то же самое(
Извините за неопытность, только начинаю программировать
# -*- coding:utf-8 -*-
import time
import datetime
import vk_api
print("Бот запущен!")
time.sleep(1)
print("Открываю файл...")
try:
    file = open("settings.txt")
    lines = file.readlines()
    a = lines[0][6:8].lower()
    ids = lines[2][11:].split(" ")
    ids[-1] = ids[-1][:-1]
    token = lines[1][7:-1]
    vk = vk_api.VkApi(token=token)
    vk.get_api()

    ready_id = []
    text = lines[3][6:-1]
    media = "wall-170069536_1604,"+lines[4][7:-1]
    if a == "re":
        if len(lines[6]) == 6:
            post = lines[5][6:-1]
            for id in ids:
                try:
                    vk.method("wall.repost", {"object": post, "group_id": int(id),"message":text})
                    print("Выполнен репост поста для vk.com/public"+id)
                    ready_id.append(id)
                    time.sleep(10)
                except:
                    print("Не удалось сделать репост поста для vk.com/public" + id)
            print("Готово! Сделано постов: "+str(len(ready_id))+"\nНе получилось: "+str(len(ids)-len(ready_id)))
        else:
            print("Вконтакте не позвляет сделать репост поста отложенной записью программным способом, но программа может сама ждать определённого момента чтобы опубликовать запись. Для этого не выключайте её и ждите до необходимого времени. Если вы не хотите ждать, то выключите программу.")
    elif a == "po":
        print(len(lines[6]))
        if len(lines[6]) > 8:
            dat = lines[6][6:].split(" ")
            dt = datetime.datetime(int(dat[0]), int(dat[1]), int(dat[2]), int(dat[3]),int(dat[4]))
            datep = int((dt - datetime.datetime(1970,1,1)).total_seconds()) - 60*60*3
            for id in ids:
                try:
                    vk.method("wall.post", {"owner_id":int(id)*-1,"from_group":1,"message":text,"attachments":media,"publish_date":datep})
                    print("Выполненo создание поста для vk.com/public"+id)
                    ready_id.append(id)
                    time.sleep(10)
                except:
                    print("Не удалось сделать пост для vk.com/public" + id)
            print("Готово! Сделано постов: "+str(len(ready_id))+"\nНе получилось: "+str(len(ids)-len(ready_id)))
        else:
            for id in ids:
                try:
                    vk.method("wall.post", {"owner_id":int(id)*-1,"attachments":media,"from_group":1,"message":str(text)})
                    print("Выполнено создание поста для vk.com/public"+id)
                    ready_id.append(id)
                    time.sleep(10)
                except:
                    print("Не удалось сделать пост для vk.com/public" + id)
            print("Готово! Сделано постов: "+str(len(ready_id))+"\nНе получилось: "+str(len(ids)-len(ready_id)))

except:
    print("При открытии файла что-то пошло не так...\nВозможно вы переместили или удалили необходимый файл. Если файла с именем 'settings.txt' нет, то создайте новый!")

Ссылка на ошибку
  • Вопрос задан
  • 80 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы