Отправка данных через Интернет в удаленную программу с использованием Python - PullRequest
1 голос
/ 11 ноября 2011

У меня есть программа, которую я написал на python, которая собирает данные.Я хочу иметь возможность хранить данные в Интернете где-нибудь и позволить другому пользователю получить доступ к ним с другого компьютера в другом месте, в любой точке мира, где есть подключение к Интернету.Моя первоначальная идея заключалась в том, чтобы использовать почтовый клиент, например, g-mail, для хранения данных путем отправки маринованных строк по адресу.Это позволило бы любому получить доступ к адресу и просто прочитать новейшую электронную почту, чтобы получить данные.Он работал отлично, но программа требует, чтобы новое электронное письмо отправлялось каждые 5-30 секунд.Таким образом, этот метод потерпел неудачу из-за того, что у электронной почты было ограничение на количество писем, в том числе, например, я не смог полностью удалить старые письма.

Теперь я хочу попробовать другую идею,но я не очень разбираюсь в сетевом программировании на python.Я хочу настроить веб-страницу, на которой практически ничего нет.«Основная» программа, программа, которая на самом деле собирает данные, отправит на веб-страницу засоленную строкуТогда любая из «удаленных» программ сможет прочитать строку.Мне также понадобится мастер-программа для удаления старых строк при обновлении веб-страницы.Было бы предпочтительнее иметь возможность хранить несколько строк, чтобы не было возможности обновления мастера, пока удаленный компьютер читает.

Я не знаю, выполнимо ли это в Python, но все и всяидеи приветствуются.Кроме того, если у вас есть идеи о том, как сделать это по-другому, у меня все уши, хорошо глаза в этом случае.

Ответы [ 4 ]

2 голосов
/ 11 ноября 2011

Я бы посоветовал взглянуть на настройку простого сайта в движке приложений Google.Это бесплатно, и вы можете использовать Python для создания сайта.Тогда это будет просто вопрос создания простой службы покоя, в которую вы можете отправить POST со своими маринованными данными и сохранить их в базе данных.Чем просто создать простой веб-интерфейс для базы данных.

1 голос
/ 11 ноября 2011

Еще один вариант в дополнение к тому, что уже предоставил Кейси:

Установите удаленную базу данных MySQL где-нибудь с уровнями доступа пользователей, разрешающими удаленные подключения. Затем ваша программа на Python может просто получить доступ к базе данных и INSERT данным, которые вы пытаетесь централизованно хранить (например, через пакет MySQLDb или пакет pyodbc). Затем ваши пользователи могут либо читать данные через клиент, который поддерживает MySQL, либо вы можете написать простой интерфейс на Python или PHP, который отображает данные из базы данных.

0 голосов
/ 12 ноября 2011

Я предлагаю вам использовать хорошее промежуточное ПО, такое как: Zero-C ICE, Pyro4, Twisted.

Pyro4 с использованием pickle для сериализации данных.

0 голосов
/ 11 ноября 2011

Добавление этого в качестве ответа, чтобы OP с большей вероятностью увидел его ...

Убедитесь, что вы считаете безопасность! Если вы просто слепо принимаете маринованные данные, это может привести к выполнению произвольного кода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...