Найти - Пользователи
Полная версия: передача данных с одного компа на другой
Начало » Python для новичков » передача данных с одного компа на другой
1 2 3
Encore_1908
Так вот “локалхост” наоборот не должно быть. Локалхост это 127.0.0.1, что является кольцом для тестирования вашего приложения на вашей же машине.
Ай пи пишите хамачевский, порт впринципе не важен, но лучше возьмите из не зарезервированных.
pellon
ip hamachi у меня: 25.124.229.232
это вот так получится:

сервер:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import socket
import pygame
from pygame.locals import *
sock = socket.socket()
sock.bind((''25.124.229.232",9090))
sock.listen(1)
conn, addr = sock.accept()
print 'connected:', addr
while True:
    data = conn.recv(1024)
    if not data:
        break
    conn.send(data)
conn.close()

клиент:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import socket
sock = socket.socket()
sock.connect(('25.124.229.232',9090))
hel=raw_input()
sock.send(hel)
data = sock.recv(1024)
sock.close()
print data
input()

а с портом я не понял
Encore_1908
Хм, а порт 9090 почему Вам не подходит?
pellon
порт 9090 был в одной статье.
а как узнать какой порт подходит?
Encore_1908
используйте 9090
pellon
у меня в клиенте только один раз можно написать что нибудь и выведет эту же надпись только на верхнем регистре.
а если отключить и заново включить клиент при этом не отключая сервер
то в клиенте уже нельзя будет писать…
как сделать бесконечный цикл чтоб в клиенте можно было писать скоко угодно?
Encore_1908
это понятно. Давайте вы тоже чуток подумаете, я просто намекну.
Бесконечный цикл вставлять там где сервер работает на приём + прослушку сокета на наличие новых данных
pellon
я не очень понял….
но деваться мне некуда. буду думать..
мне так и так придётся “пройти этот уровень”
Encore_1908
вообщем sock.listen(1) у вас 1 раз всего используется, то есть. Он 1 раз послушал на подключение клиента, и ему пофиг кто там к нему еще хочет подключиться
Далее создается всего 1 сокет, как бы это не было печально.Поэтому если вы разорвали соединение с клиентом, то и сокет порвался с ним.Вот и всё. Вот вам и бесконечный циклНо лучше всё таки создание сокетов как-то ограничивать по количеству.
Например:
-Слушайте на наличие подключения постоянно.
-Сделайте сокетов “про запас”
-Если отключается сокет освобождайте его.

Ну как-то так
pellon
ну вобщем понял…..
мне так то надо чат в итоге научиться делать.
а потом игру по сети.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB