Задать вопрос
  • Как создать телеграм бот из exe файла?

    @Zailox
    Есть способ (легче всего на питоне):

    1. С помощью библиотек (os, cv) открываем захватываем окно программы
    2. С помощью flask транслируем изображение в html версию
    3. Добавляем управление на сайт
    4. При помощи белого айпи/тунелей геним ссылки на разные порты с копиями программы
    5. Создаём бота

    C# плохо для этого подходит

    Если имеется ввиду просто запустить - вот пример:
    from aiogram import Bot, types
    from aiogram.dispatcher import Dispatcher
    from aiogram.utils import executor
    import os
    
    from config import TOKEN
    
    
    bot = Bot(token=TOKEN)
    dp = Dispatcher(bot)
    
    
    @dp.message_handler(commands=['start'])
    async def start(message: types.Message):
        os.popen("путь к .exe")
        await message.reply("Запустил")
    
    if __name__ == '__main__':
        executor.start_polling(dp, skip_updates=True)


    И в файле config.py:
    TOKEN = 'токен'

    А вот тебе вариант на C# (нужно только запуск .exe добавить)
    Ответ написан
    Комментировать
  • Visual Studio не билдит 1 файл, что делать?

    @Zailox Автор вопроса
    Решил по советам с SO не нажимать на сборку, а запустить отладку - он сам предложил собрать измененные файлы. На самом деле - он билдит, но не 20 секунд а два с половиной часа. (в итоге изменения не сохранились, даже удаленный спрайт остался, хотя configure я заново запускал). Пришлось делать чистку и собирать с нуля. Если найду проблему - изменю.
    Ответ написан
    Комментировать
  • Как разделить интерфейсы wifi (Captive Portal)?

    @Zailox Автор вопроса
    Нашёл решение! (причем на офф сайте OpenWRT)

    Вот оно

    Ещё пришлось донастроить, так как интерфейс 192.168.2.1 не открывался:

    6787c0e0278e2949875341.png
    6787c0e7127e6975403983.png

    Этот кфг нужен конкретно для nds

    Интерфейс Radio0 или Radio1 нужно выбрать в зависимости от сети (5/2.4 GHz)

    И в конфиге NDS (/etc/config/nodogsplash) после туториала нужно сменить

    option gatewayinterface 'br-lan'

    На

    option gatewayinterface 'br-guest'

    Имена интерфейсов и других опций оставил как в туториале, так что всё должно работать.
    Ответ написан
    3 комментария
  • Как установить состояние определённому пользователю?

    @Zailox
    Оригинальный бот работает с ДБ, т.е. каждой анкете можно присваивать айди пользователя. Т.е. при создании анкеты она должна попасть в ДБ типа:
    ID         Anketa
    25        Тут анкета (текст + ссылка (путь) к фото)

    С этим уже нужно разобраться самим
    Ответ написан
  • Как вырезать лишнее из bluestacks? Как создать свою кастомную сборку в пример приведу популярного ютубера и сборщика ( SpeedyTerror )?

    @Zailox
    При создании виртуалки создаётся файл в папке блюстакса (не помню расширение, но весит он несколько гигов) - это образ системы. Просто удаляешь всё что не нужно и уже делишься этим образом (хотя тот же SpeedyTerror мог через HxD поменять путь загрузки этого образа, чтобы установка выглядела как обычно)
    Ответ написан
    Комментировать
  • Я создаю лаунчер для Minecraft на Python. Как решить проблему с запуском загрузчика NeoForge?

    @Zailox
    Зачем передавать uuid и token если в них нет значения? (как и походу лицензии)

    Вы в переменной java_path передаете javaw, а надо java

    Или можно call напрямую:
    C:\Program Files\Java\jdk-21\bin\java.exe -Xmx4G -Xms2G -jar *путь/до/клиента.jar* --username Test
    Ответ написан
  • Какая есть альтернатива radmin vpn но для linux?

    @Zailox
    Если от радмина нужна именно общая сеть - на линуксе ставь Wine, т.к. аналогов особо нет
    Ответ написан
    Комментировать
  • Как программировать на удаленном компьютере?

    @Zailox
    Если можно запускать сторонние .exe`шники - Anydesk
    Ответ написан
    Комментировать
  • Как запустить js скрипт перед загрузкой сайта?

    @Zailox Автор вопроса
    Решение на основе ответа CuriousLynx:

    manifest.json:

    {
    ...
      "background": {
        "scripts": ["background.js"],
        "persistent": true  //Блок запросов через background.json
    ...
      "permissions": [
            "tabs",
            "storage",
            "webRequest",
            "webRequestBlocking",
            "<all_urls>" //Все 3 последних разрешения для блока
        ]
    }

    background.js:

    chrome.webRequest.onBeforeRequest.addListener(
      function(details) { return {cancel: true}; },
      {urls: ["*://domen.saita/exam/js/main.module_9dae9.js"]},
      ["blocking"]
    );


    А дальше через content.js замена src на свой.
    Ответ написан
    Комментировать
  • Как решить проблему Selenium при работе с играми в веб телеграм?

    @Zailox
    Во 1, нужно убедиться, что на элемент уже можно кликнуть

    element = WebDriverWait(driver, 20).until(
    EC.presence_of_element_located((By.ID, "myElement")))


    2. Путь может постоянно меняться, вы точно все попробовали? И по айди, и по xpath, и по css, html и т.д.?

    3. Для автоматизации игры лучше запустить приложение, и писать код на основе pyautogui.
    Ответ написан
  • Как сократить код?

    @Zailox
    Можно все это написать в одну строку, но это будет ещё более неудобным для чтения.

    Пример:

    Вместо

    if a == 5:
        do_smth()
    else:
        if a > 10:
            func()
        else:
           func2()


    Можно

    do_smth() if a == 5 else func() if a > 10 else func2()


    Не очень понятно, про какие вы говорили циклы, для чего они?

    Насчёт "нужно ли выводить в функцию" - если вы используете этот код только здесь - нет, если в нескольких местах - да, желательно.
    Ответ написан
    1 комментарий
  • Как сделать exe файл в python?

    @Zailox
    Не нужно компилировать все в ехе, достаточно скомпилировать сам скрипт, а все эти файлы положить в одну папку.

    Если имеется ввиду сделать из всего этого один файл (как обязательное условие) - никак, только сохранять содержимое файлов в переменные, например
    Ответ написан
    Комментировать
  • Как убрать "перейти к сообщению" в телеграм?

    @Zailox Автор вопроса
    await message.answer(price, link_preview_options=LinkPreviewOptions(is_disabled=True))

    Решило проблему, но пришлось перейти на 3 аиограм
    Ответ написан
  • Как удалить сообщение, на которое ответили определенным текстом (aiogram)?

    @Zailox Автор вопроса
    async def delete(message: types.Message):
        if not message.reply_to_message:
            await message.reply('Эта команда должна быть ответом на сообщение!')
        else:
            await bot.delete_message(chat_id=message.chat.id, message.reply_to_message.message_id)
            #или
            await message.reply_to_message.delete()
    Ответ написан
    Комментировать
  • Как настроить авторизацию в telegram боте?

    @Zailox
    Лучше всё-же использовать SQL датабазы, но вот есть вариант без него с сохранением пользователей вида "юзер пароль":
    users = open("users.txt", 'a+')
    ...
    #После отправки команды /login
    for item in users.read().split("\n"):
        message = message.replace("/login ", "")
        if message.split(" ", 1)[0] == item.strip().split(" ", 1)[0] and message.split(' ', 1)[-1] == item.strip().split(' ', 1)[-1]:
            message.answer("Вы вошли")
        else:
            message.answer("Зарегистрируйтесь командой /register")
    ...
    #После отправки команды /register
            users.write(message.replace("/register ", ""))
            message.answer("Вы успешно зарегистрировались")


    Примерно так должен выглядеть код, пример написан на aiogram, вход происходит при отправке команды /login логин пароль, а регистрация при отправке команды /register логин пароль. И вообще, главное в обучении - problem solving, так что пореже обращайтесь к ИИ и форумам, если даже не пытались решить задачу.
    Ответ написан
    Комментировать
  • Может ли злоумышленник получить ссылку на сайт мини приложения телеграм?

    @Zailox
    Может, причём очень даже просто (через какие-нибудь http canary, pcapdroid, wireshark (если ПК) и т.д.). Вариант решения (не факт, что будет работать, но можно попробовать) - добавить веб ссылку не самого приложения, а сервера, который будет перенаправлять запрос на сайт с приложением. Либо сделать загрузку веб приложения только при получения запроса с определенным user-agent`ом.
    Ответ написан
    Комментировать
  • Как не запрашивать логин / пароль Linux?

    @Zailox Автор вопроса
    Как оказалось - команды работают нормально, просто из-за /bin/bash -c другие аргументы не передавались, вот решение: /bin/bash -c "passwd -d test"; /bin/bash -c "login test"
    Ответ написан
    Комментировать
  • Как пофиксить ошибку с установкой библиотек через Pip?

    @Zailox
    1. Модуль называется pygame, а не paygame
    2. Если будет ошибка, связанная с SSL - нужно отключить VPN/прокси, если он включен
    3. Если модуль реально называется paygame, ии вы пытаетесь установить его с папки - переходим в папку и пишем pip install . -e
    Ответ написан
  • Как изменить фотографию и текст, но не отправлять это новым сообщением (редактированием) в aiogram?

    @Zailox
    mymessage = await call.message.answer_photo(photo=photo, caption=f'<b> Твои батл-комнаты:</b>\n', parse_mode="HTML", reply_markup=markup_admin_or_basic)
    with open('graph-progress.png', 'rb') as photo:
        ...
        await call.message.edit_media(photo=photo) #Для редактирования медиа (фото, видео и т.д.)
        await bot.edit_message_text(chat_id=message.chat.id, message_id=mymessage.message_id, text="Lorem Ipsum is a dummy") # Для редактирования текста
    Ответ написан
  • Как изменить консоль по умолчанию linux?

    @Zailox Автор вопроса
    Всё оказалось просто, вместо init файла из /bin/dash нужно было в этот файл написать "/bin/bash"
    Ответ написан
    Комментировать