Управление программой на python с другого устройства

Я хочу узнать, есть ли какой-нибудь способ сделать программу на python, но чтобы ей можно было управлять с другого устройства подключённого к той же wifi сети, что и комп с программой? Может есть какая-нибудь библиотека с помощью которой можно это реализовать? Или на питоне это сделать невозможно? (Управлять в плане чтобы можно было просто запускать функции с другого устройства)


Ответы (1 шт):

Автор решения: Александр Рассказчиков

Есть множество возможностей реализации вашей задумки. Я рассмотрю несколько самых простых вариантов.

  1. Сокеты

Есть замечательная статья на Хабре, которая помогла мне разобраться с ними в своё время:

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

Рассмотрим это на простом примере. Представим себе большой зал с множеством небольших окошек, за которыми стоят девушки. Есть и пустые окна, за которыми никого нет. Те самые окна — это порты. Там, где стоит девушка — это открытый порт, за которым стоит какое-то приложение, которое его прослушивает. То есть, если, вы подойдете к окошку с номером 9090, то вас поприветствуют и спросят, чем могут помочь. Так же и с сокетами. Создается приложение, которое прослушивает свой порт. Когда клиент устанавливает соединение с сервером на этом порту именно данное приложение будет ответственно за работу этим клиентом. Вы же не подойдете к одному окошку, а кричать вам будут из соседнего :)

После успешной установки соединения сервер и клиент начинают обмениваться информацией. Например, сервер посылает приветствие и предложение ввести какую-либо команду. Клиент в свою очередь вводит команду, сервер ее анализирует, выполняет необходимые операции и отдает клиенту результат.

  1. REST-API Взаимодействие. Намного проще для осознания. Чтобы что-то сделать, вы посылаете запрос на сервер с необходимыми параметрами, после чего, сервер делает что-то, что именно вам и нужно. Ссылка на туториал по API на Python.
→ Ссылка