User-Profile-Image
hankin
  • 5
  • 首页
  • 分类
    • Windows
    • Web
    • VoIP
    • Virtualization
    • Trading
    • Smart Home
    • SEO
    • Security
    • Python
    • Program
    • PHP
    • OSX
    • OS
    • OpenSource
    • Nginx
    • MySQL
    • Mood
    • Linux
    • Life
    • Injection
    • Hosting
    • Exploits
    • CDN
  • 页面
    • About
  • 友链
    • 维酷科技
    • Tesra超算网络
Help?

Please contact us on our email for need any support

Support
  • 首页
    首页   ›   Program   ›   Python   ›   正文
Python

基于Python的socket编程

2010-10-21 03:50:51
1478  0 0
服务端:
#socket server端
#获取socket构造及常量
from socket import *
#”代表服务器为localhost
myHost = ”
#在一个非保留端口号上进行监听
myPort = 50007
#设置一个TCP socket对象
sockobj = socket(AF_INET, SOCK_STREAM)
#绑定它至端口号
sockobj.bind((myHost, myPort))
#监听,允许5个连结
sockobj.listen(5)
#直到进程结束时才结束循环
while True:
#等待下一个客户端连结
connection, address = sockobj.accept( )
#连结是一个新的socket
print ‘Server connected by’, address
while True:
#读取客户端套接字的下一行
data = connection.recv(1024)
#如果没有数量的话,那么跳出循环
if not data: break
#发送一个回复至客户端
connection.send(‘Echo=>’ + data)
#当socket关闭时eof
connection.close( )
客户端:
import sys
from socket import *
serverHost = ‘localhost’
serverPort = 50007
#发送至服务端的默认文本
message = [‘Hello network world’]
#如果参数大于1的话,连结的服务端为第一个参数
if len(sys.argv) > 1:
serverHost = sys.argv[1]
#如果参数大于2的话,连结的文字为第二个参数
if len(sys.argv) > 2:
message = sys.argv[2:]
#建立一个tcp/ip套接字对象
sockobj = socket(AF_INET, SOCK_STREAM)
#连结至服务器及端口
sockobj.connect((serverHost, serverPort))
for line in message:
#经过套按字发送line至服务端
sockobj.send(line)
#从服务端接收到的数据,上限为1k
data = sockobj.recv(1024)
#确认他是引用的,是’x’
print ‘Client received:’, repr(data)
#关闭套接字
sockobj.close( )
评论 (0)

Click here to cancel reply.

欢迎您 游客  

    ProdigYu
    176文章 15评论 4点赞 361129浏览
    随机文章
    CentOS下Xen虚拟机的安装与配置
    13年前
    如何关闭Mac系统虚拟内存
    2年前
    lnmp一键包nginx加装ngx_cache_purge缓存清理模块
    3年前
    Python+Memcached网页优化
    13年前
    Linux下MySQL开启远程访问
    12年前
    Tags
    Apache CentOS CMD DDOS Debian DNS Docker FastCGI Google IIS IP iptables Linux Mac MySQL Nginx Opensource PHP Python Skill SSH Ubuntu Vim VMware VPN web.py Windows 删除 命令 命令提示符 安装 开源 技巧 插件 漏洞 百度 系统 组件 终端 缓存 网络电话 脚本 自建 详解 错误
    Meta
    • Log in
    • Entries feed
    • Comments feed
    • WordPress.org
    Copyright © 2023
    Designed by hankin
    主页
    页面
    • About
    博主
    ProdigYu 管理员
    Something about myself
    176 文章 15 评论 361129 浏览
    测试
    测试