Python

[CP_03] Python案例:客户端与服务端-网络通信|SM

2019-03-17  本文已影响0人  Fighting_001

案例1:利用socket(套接字)通信方式,模拟"客户端-服务端"通信

客户端(client)-配置
client.py

import socket

# 生成socket连接对象
client=socket.socket()
# 与目标主机(IP+端口号)建立连接
client.connect(("localhost",1001))
# 向目标程序发送数据
client.send("Hi 2019!".encode())
# 关闭连接
client.close()

服务端(server)-配置
server.py

import socket

# 创建socket连接对象
server=socket.socket()
# 绑定监听的对象(IP+端口)
server.bind(("localhost",1001))
# 监听
server.listen()
# 等待
con,addr=server.accept()
print(con,addr)
# 接收消息
data=con.recv(1024) # 1024字节
print("接收的消息为:",data)
# 关闭
server.close()

在一个窗口运行服务端脚本,再在另一窗口运行客户端脚本,然后观察服务端接收到的信息。如下:

案例2:利用SMTP(简单邮件传输协议)发送Python邮件

电子邮件协议:SMTP、POP3、IMAP4
通过<账号+密码>登录邮箱服务器,然后通过服务器指定的协议,进行邮件发送

安装支持邮件发送的包文件 pyemail:

pip3 install pyemail

代码实现:
sendMail.py

# 邮件发送方:发送方地址,发送方客户端授权密码,SMTP服务器地址(如:smtp.126.com)
# 邮件内容
# 邮件接收方

import smtplib
from email.mime.text import MIMEText

msg_from="xxxxx@xxx.com"    # 发送方邮箱地址
pwd="yyyyy" # 登录密码or客户端授权码
to="zzzzz@zzz.com"  # 接收方邮箱地址

# 发送主题&内容
subject="SMTP测试"
content="Python发送测试"

# 构造邮件
msg=MIMEText(content,"html","utf-8")    # msg邮件对象
msg["Subject"]=subject
msg["From"]=msg_from
msg["To"]=to

try:
    # 发送邮件
    ss=smtplib.SMTP_SSL("smtp.126.com",465) # 如:smtp.126.com 465端口
    ss.login(msg_from,pwd)
    ss.sendmail(msg_from,to,msg.as_string())
    print("发送ok!")
except Exception as e:
    print("发送异常:",e)

执行结果:

上一篇 下一篇

猜你喜欢

热点阅读