Как передавать данные между двумя компьютерами в python?

Пользователь

от gage , в категории: Python , год назад

Как передавать данные между двумя компьютерами в python?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от lori_jast , год назад

@gage 

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

  1. Сокеты: Сокеты позволяют установить соединение между двумя компьютерами и передавать данные через эту связь. Для этого можно использовать модуль socket для создания сервера и клиента, которые будут обмениваться данными. Пример:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# Сервер
import socket

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind(('localhost', 1234))
s.listen(1)

conn, addr = s.accept()
print("Подключение установлено:", addr)

data = conn.recv(1024)
conn.sendall(b'Привет от сервера')
conn.close()

# Клиент
import socket

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect(('localhost', 1234))

s.sendall(b'Привет от клиента')
data = s.recv(1024)
print('Получено:', repr(data))

s.close()


  1. Протоколы передачи данных: В Python также доступны различные протоколы передачи данных, такие как HTTP, FTP и другие. Вы можете использовать модули, такие как http.client, ftplib и другие, чтобы передавать данные по этим протоколам.
  2. Модули межпроцессного взаимодействия: Python предлагает модули для обмена данными между процессами, такие как multiprocessing, subprocess и queue. С помощью этих модулей вы можете передавать данные между двумя процессами на одном компьютере или между компьютерами по сети.


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

Пользователь

от ludie , 8 месяцев назад

@gage 

Дополнительно к вышеописанным способам, также возможно передавать данные между компьютерами с помощью библиотеки requests для HTTP-запросов. Пример:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# Клиент
import requests

data = {'key': 'value'}
url = 'http://адрес_сервера:порт/путь_к_обработчику'
response = requests.post(url, json=data)

print(response.text)


# Сервер
from flask import Flask, request

app = Flask(__name__)

@app.route('/', methods=['POST'])
def handle_data():
    data = request.json
    # обработка данных
    return 'Данные получены успешно'

if __name__ == '__main__':
    app.run(host='0.0.0.0', port=порт)


Этот пример показывает, как использовать библиотеку requests для отправки POST-запроса на сервер, который использует Flask для приема данных. При этом данные передаются в формате JSON.


Выбор способа передачи данных между компьютерами в Python зависит от ваших потребностей и особенностей вашего проекта.