Python网络编程基础知识和代码案例

Python基础 09/29 阅读 37 views次 人气 0
摘要:

Python网络编程基础知识,服务器端和客户端的通信的代码案例。

案例代码:

服务器端

# 导入 socket、sys 模块
import socket
import sys
# 创建 socket 对象
serversocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 获取本地主机名
host = socket.gethostname()
port = 9999
# 绑定端口号
serversocket.bind((host, port))
# 设置最大连接数,超过后排队
serversocket.listen(5)
while True:
    # 建立客户端连接
    clientsocket, addr = serversocket.accept()
    print("连接地址: %s" % str(addr))
    msg = '欢迎访问服务器端!' + "\r\n"
    clientsocket.send(msg.encode('utf-8'))
    clientsocket.close()

客户端,代码:

# 导入 socket、sys 模块
import socket
import sys
# 创建 socket 对象
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 获取本地主机名
host = socket.gethostname()
# 设置端口好
port = 9999
# 连接服务,指定主机和端口
s.connect((host, port))
# 接收小于 1024 字节的数据
msg = s.recv(1024)
s.close()
print (msg.decode('utf-8'))


Python Internet模块:

协议  功能用处   端口号    Python 模块
HTTP   网页访问   80 httplib, urllib, xmlrpclib
NNTP   阅读和张贴新闻文章,俗称为"帖子"  119    nntplib
FTP    文件传输   20 ftplib, urllib
SMTP   发送邮件   25 smtplib
POP3   接收邮件   110    poplib
IMAP4  获取邮件   143    imaplib
Telnet 命令行    23 telnetlib
Gopher 信息查找   70 gopherlib, urllib

安装requtests模块:

D:/MyApps/Python/Python34/python -m pip install requests


案例代码:

import requests
# 访问百度主页
r = requests.get("http://www.baidu.com")
# 查看状态码,状态码为200表示访问成功
print(r.status_code)
#更改编码为
r.encoding = 'utf-8'
# 打印网页内容
print(r.text)
print(r.content)
import requests
def getHTMLText(url):
    try:
        r = requests.get(url, timeout=30)
        r.raise_for_status()
        print(r.apparent_encoding)
        r.encoding = r.apparent_encoding
        return r.text
    except:
        return "产生异常"
if __name__ == "__main__":
    url = "http://www.baidu.com"
    print(getHTMLText(url))


评论

该文章不支持评论!

分享到: