Solved

[python][network]   simplest networking

Posted on 2007-11-23
2
321 Views
Last Modified: 2010-04-16
I just want python to send a line of text to the other script on the other computer


they are on the same network,

so,

just a server script listening for

a client script sending one line of text,


is it possible?
0
Comment
Question by:Troudeloup
2 Comments
 
LVL 17

Expert Comment

by:ramrom
ID: 20341256
Yes - see the socket module
0
 
LVL 28

Accepted Solution

by:
pepr earned 500 total points
ID: 20344140
If you are allowed, see the question http:#21995292 and the answers. If you cannot search for the answers, here are copies of my answers...

1) Focus on the built-in module socket (Python doc "7.2 socket -- Low-level networking interface"). See the examples:

http://www.qiksearch.com/python/sockets/server.py
http://www.qiksearch.com/python/sockets/client.py

They are a bit old and could be written aestetically better, but they show the principle. (Add the line UDPSock.sendto('', addr) before the break to finish the server when sending empty line.)

Later, you may get info and inspiration in the standard module SocketServer Python doc ("11.16 SocketServer -- A framework for network servers")

Use the snippets below, store them in separate files -- one for the server, one for the client. The UDP is the simplest form of usage of the IP protocol. See http://en.wikipedia.org/wiki/User_Datagram_Protocol. More reliable transfer can be done via TCP (see http://en.wikipedia.org/wiki/Transmission_Control_Protocol).
# Server program
 

import socket
 

# Set the socket parameters

addr = ('', 33333)  # host, port
 

# Create socket and bind to address

UDPSock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)

UDPSock.bind(addr)
 

# Receive messages

while True:

    data, addr = UDPSock.recvfrom(1024)

    if data == 'stop':

        print 'Client wants me to stop.'

        break

    else:

        print "From addr: '%s', msg: '%s'" % (addr[0], data)
 

# Close socket

UDPSock.close()

print 'Server stopped.'
 

---------------------------------------------------------------
 

# Client program
 

import socket
 
 

#addr = ('localhost', 33333)                                # localhost, port

#addr = ('127.0.0.1', 33333)                                # localhost explicitly

#addr = ('xyz', 33333)                                      # explicit computer

#addr = ('<broadcast>', 33333)                              # broadcast address

addr = ('255.255.255.255', 33333)                          # broadcast address explicitly
 

UDPSock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) # Create socket
 

print 'Enter your message:'

print '- Empty message to stop this client.'

print '- "stop" to stop all servers.'
 

# Almost infinite loop... ;)

while True:

    data = raw_input('>> ')

    if len(data) == 0:

        break

    else:

        if UDPSock.sendto(data, addr):

            print "Sending message '%s'..." % data
 

UDPSock.close()             # Close socket

print 'Client stopped.'

Open in new window

0

Featured Post

Top 6 Sources for Identifying Threat Actor TTPs

Understanding your enemy is essential. These six sources will help you identify the most popular threat actor tactics, techniques, and procedures (TTPs).

Join & Write a Comment

Plenty of writing has gone on the web trying to compare Python with other competitive programming languages and vice versa. However, not much has been put into a wholistic perspective. This article should help you decide whether to adopt Python as a…
Flask is a microframework for Python based on Werkzeug and Jinja 2. This requires you to have a good understanding of Python 2.7. Lets install Flask! To install Flask you can use a python repository for libraries tool called pip. Download this f…
Learn the basics of strings in Python: declaration, operations, indices, and slicing. Strings are declared with quotations; for example: s = "string": Strings are immutable.: Strings may be concatenated or multiplied using the addition and multiplic…
Learn the basics of lists in Python. Lists, as their name suggests, are a means for ordering and storing values. : Lists are declared using brackets; for example: t = [1, 2, 3]: Lists may contain a mix of data types; for example: t = ['string', 1, T…

708 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

11 Experts available now in Live!

Get 1:1 Help Now