python socket基本过程之一(client)

本文介绍了一个标准的Python Socket客户端程序实现过程。从创建socket到获取服务器IP并建立连接,再到发送接收数据,最后关闭socket。适用于初学者了解Socket编程的基础知识。

Python 3 Socket Client


所有的注释都写在了代码片段中,放在此处,以作记录。

#! _*_ coding:utf-8 _*_

'''
我将要写一个标准的socket 客户端程序,书写整个流程
Author:vincent
'''

import socket
import sys

print("hello world 你好世界")

# 第一步:创建socket
'''
Address Family:可以选择 AF_INET(用于 Internet 进程间通信) 或者 AF_UNIX(用于同一台机器进程间通信)
Type:套接字类型,可以是 SOCKET_STREAM(流式套接字,主要用于 TCP 协议)或者 SOCKET_DGRAM(数据报套接字,主要用于 UDP 协议)
'''

try:
    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
except socket.error as msg:
    print("Socket创建失败,失败代码是:" + str(msg[0]) + "失败的信息是:" + msg[1])
    sys.exit()

print("socket 创建成功!")

# 第二步:获取服务器IP ,连接服务器
'''
函数 socket.gethostbyname 来获得远程主机的 IP 地址
'''

host = 'c.inhand.com.cn'
port = 80

try:
    server_ip = socket.gethostbyname(host)
except socket.gaierror:
    print("无法进行主机IP 地址解析,之后退出")
    sys.exit()

print(host + "服务器的当前IP 是:" + server_ip)

s.connect((server_ip, port))
print("tcp连接成功,当前服务器IP 是" + server_ip)

#第三步:发送,接收数据

request_data="GET/HTTP/1.1"
try:
    s.sendall(request_data.encode())
except socket.error:
    print("请求发送失败")
    sys.exit()
print("请求发送成功!")


reply=s.recv(4096)
print(reply.decode())

#第四步:关闭socket
s.close()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值