Как сделать Discord Bot в Python

Как сделать Discord Bot в Python

Система у нас: 

Welcome to Ubuntu 18.04.5 LTS (GNU/Linux 4.15.0-117-generic x86_64)

Обновляем: 
sudo apt update

sudo apt install software-properties-common

Добавляем:

sudo add-apt-repository ppa:deadsnakes/ppa

Устанавливаем:

sudo apt install python3.7

Проверяем:

python3.7 --version


Ставим:

sudo apt install python3-pip

Проверяем:

pip3 --version
pip 9.0.1 from /usr/lib/python3/dist-packages (python 3.6)

Ставим:

pip3 install discord.py


Выполнить команду Shell в Python с модулем os

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

import os  myCmd = 'ls -la'  os.system (myCmd)

Теперь, если мы запускаем эту программу, и вот что мы видим в выводе.

python myprog.py  total 40 drwxr-xr-x  3 andreyex andreyex 4096 Jan 20 13:23 . 

Это содержимое каталога, в котором хранится myprog.py.

Если вы хотите использовать вывод команды оболочки, вы можете сохранить его в файле непосредственно из команды оболочки:

import os myCmd = 'ls -la > out.txt' os.system(myCmd)

Вы также можете сохранить выходные данные команды оболочки в переменной следующим образом:

import os myCmd = os.popen('ls -la').read() print(myCmd)

Если вы запустите вышеупомянутую программу, она напечатает содержимое переменной myCmd и будет такой же, как и результат команды ls, которую мы видели ранее.

Теперь давайте посмотрим другой способ запуска команды Linux в Python.

Выполнить команду оболочки в Python с модулем подпроцесса

Несколько лучший способ запуска команд оболочки в Python – использование подпроцессмодуль.

Если вы хотите запустить команду оболочки без каких-либо параметров и аргументов, вы можете вызвать подпроцесс следующим образом:

import subprocess subprocess.call("ls")

Метод call выполнит команду оболочки. Вы увидите содержимое текущего рабочего каталога при запуске программы:

python myprog.py  agatha.txt  count1.txt    file1.txt  myprog.py <br>  target count        count2.txt  file2.txt  sherlock.txt

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

import subprocess subprocess.call(["ls", "-l", "."])

Когда вы запустите программу, вы увидите содержимое текущего каталога в виде списка.

Теперь, когда вы знаете, как запустить команду оболочки с подпроцессом, возникает вопрос о сохранении вывода команды оболочки.

Для этого вам нужно будет использовать функцию Popen. Он выводит объект Popen, у которого есть метод communication(), который можно использовать для получения стандартного вывода и ошибки в виде кортежа.

import subprocess MyOut = subprocess.Popen(['ls', '-l', '.'],  <br>            stdout=subprocess.PIPE,              stderr=subprocess.STDOUT) stdout,stderr = MyOut.communicate() print(stdout) print(stderr)

Когда вы запустите программу, вы увидите stdout и stderr (которых в данном случае нет).

python myprog.py   total 32  -r--r--r-- 1 andreyex andreyex <br> 456 Dec 11 21:29 agatha.txt  -rw-r--r-- 1 andreyex andreyex    0 Jan 20 12:11 count  -rw-r--r-- 1 andreyex andreyex   14 Jan 10 16:12 count1.txt  -rw-r--r-- 

В этом примере мы рассмотрим создание .exe на примере Python3.4.

Прежде всего на нужно создать виртуальное окружение для Python3.4. В этом примере мы назовем myenv, Вы можете выбрать любое другое имя, но не забывайте сделать соответствующие изменения.

На терминале наберите следующие команды:

>py -3.4 -m venv myenv > myenv\Scripts\activate.bat

В командной строке появится префикс myenv, а это значит, что виртуальное окружение с именем myenv загружено. Все команды Python теперь будет использовать новое виртуальное окружение.

Теперь давайте установим py2exe (https://pypi.python.org/pypi/py2exe~~HEAD=dobj) в нашем виртуальном окружении:

>pip  install py2exe 

И, наконец, чтобы создать единый EXE-файл, в нашем виртуальном окружении выполняем команду:

>python -m  py2exe.build_exe hello.py -c --bundle-files 0 


(замените hello.py на имя вашего скрипта. Если скрипт находится в другой папке, то нужно использовать полный путь к вашему сценарию, например, C:\Projects\Python\ hello.py). Это создаст папку DIST, которая содержит исполняемый файл. Для быстрого доступа к нему, наберите в терминале:

> explorer dist

Вы увидите путь к папке, где находится EXE-файл.

Примечание: При выполнении, откроется окно и исчезают так же быстро, как и появилось.
Это происходит потому, что операционная система автоматически закрывает терминал, в котором консольная программа закончена.
Для того, чтобы изменить эту ситуацию, можно добавить строчку

> input (" Нажмите для выхода ... ")

в конце файла Python. Интерпретатор будет ждать ввода пользователя, а окно будет оставаться открытым, пока пользователь не нажимает клавишу ввода.

Вы можете подробно изучить использование py2exe в документации на странице модуля: https://pypi.python.org/pypi/py2exe
Выход из виртуального окружения производится командой

>deactivate

Способ 2

Через командную строку Windows устанавливаем pyinstaller:

>pip install pyinstaller 

В командной строке переходим в папку, где находится файл

cd c:\... 

Затем в командной строке набираем команду

 pyinstaller --onefile example.py 

Вместо exapmle.py используем имя файла, из которого нужно создать exe файл.

Через пару минут все готово! Скоркее всего, exe файл будет находится во созданной подпапке dist


11:50
467
Нет комментариев. Ваш будет первым!
Загрузка...