April 4, 2023

Софт для Optimism Vote

Решил поделиться моим софтом под голосовалку оптимизма. Что делает софт:

Софт бесплатный, написан на python гигамозгом под названием ChatGPT. Хочу чтобы вы сами все настроили я лишь дам вам 2 необходимых файла config.json и main.py, можете посмотреть что к чему, проверить софт и дальше решать запускать его или нет.

Ссылка на Githab Gist (файлообменник)
Мой канал в ТГ: Thor Lab

Проверка софта

Для начала хочу рассказать вам действенный метод проверить. Используйте ChatGPT, он отлично понимаем код и спойлер - практически весь код был написать им.

Просто скопируйте весь код и отправьте ему, попросите полностью проанализировать софт, расписать по пунктам что он делает и откуда берет данные.

Не стесняйтесь, можете спросить за каждый кусок кода, а так же поинтересоваться отправляет ли он куда-либо ваши данные!

ChatGPT: https://chat.openai.com/chat

Подготовка

Для работы с python рекомендую использовать PyCharm.

Ссылка на скачивание: https://www.jetbrains.com/pycharm/

Там нужно будет еще триал версию использовать, думаю сами разберетесь, не сложно.

После скачивания, запускаем PyCharm

Нажимаем New Project

Здесь нужно будет выбрать путь (Location), можете оставить стандартный и нажимаем Create

Открывается окно проекта, вот сюда в main.py мы добавляем код проекта из гиста

Должно получиться вот так, далее мы слева нажимаем ПКМ по пустому месту выбираем New -> File и называем файл config.json

В файл мы помещаем содержимое config.json из гиста

На текущем этапе мы добавили все необходимые данные, теперь нам нужно импортировать библиотеки, которые используются в коде.

Внизу страницы нажимаем на Terminal

И вводим по очереди эти команды:

pip install web3=5.12.2

pip install eth-account

Запуск софта

Теперь мы можем поместить в папку с проектом файл wallets.txt, в котором будут содержаться приватные ключи (каждый с новой строки).

Далее переходим в config.json и настраиваем под себя:

proposal_id - ID голосования, можно взять из ссылки, пример: https://vote.optimism.io/proposals/27878184270712708211495755831534918916136653803154031118511283847257927730426

min_delay - минимальное время задержки между голосованиями

max_delay - максимальное время задержки между голосованиями

rpc - нода для взаимодействия с блокчейном

abi - это код для взаимодействия нашего кода с смарт-контрактом (его не нужно трогать)

Сохранить файл можно сочетанием Ctrl+S


Теперь когда все готово, переходим в main.py, нажимаем ctrl+shift+F10, либо кликаем ПКМ по названию вкладки main.py и нажимаем Run 'main'

После запуска открывается лог, где выводятся все сообщения, наслаждаемся

После всех голосований будет выведено сообщение об успешном окончании, если с некоторых кошельков не удастся проголосовать бот пришлет список.

Все вопросы можете задать в чате: https://t.me/thorlab_chat