python中socket网络编程的详细介绍(附示例)


本文摘自php中文网,作者不言,侵删。

本篇文章给大家带来的内容是关于python中socket网络编程的详细介绍(附示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

网络通信的三要素

  • IP

通信的时候, 双方必须知道对方的标识, 好比发邮件必须知道对方的邮件地址。 互联网上每个计算机的唯一标识就是IP地址, 类似 123.123.123.123 。

IP地址实际上是一个32位整数(称为IPv4) , 以字符串表示的IP地址,如 192.168.0.1 实际上是把32位整数按8位分组后的数字表示, 目的是便于阅读。
IPv6地址实际上是一个128位整数, 它是目前使用的IPv4的升级版, 以字符串表示。类似于 2001:0db8:85a3:0042:1000:8a2e:0370:7334 。
  • 端口port

在两台计算机通信时, 只发IP地址是不够的, 因为同一台计算机上跑着多个网络程序。 一个IP包来了之后, 到底是交给浏览器还是QQ, 就需要端口号来区分。

每个网络程序都向操作系统申请唯一的端口号, 这样, 两个进程在两台计算机之间建立网络连接就需要各自的IP地址和各自的端口号。

  • TCP/UDP协议

为了把全世界的所有不同类型的计算机都连接起来, 就必须规定一套全球通用的协议,大家把互联网的协议简称TCP/IP协议

socket编程

Socket是网络编程的一个抽象概念。 通常我们用一个Socket表示“打开了一个网络链接”, 而打开一个Socket需要知道目标计算机的IP地址和端口号, 再指定协议类型即可。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

import socket

# socket.gethostname()当不传入参数时,返回本机主机名

print(socket.gethostname()) #DESKTOP-EN0LQJH

 

#域名(英语:Domain Name),简称域名、网域,是由一串用点分隔的名字组成的Internet上某一台计算机或计算机组的名称

#通过域名查找服务器IP地址

print(socket.gethostbyname('www.baidu.com'))    #119.75.216.20

 

#通过一个IPv4的地址来获取主机信息

print(socket.gethostbyaddr('114.114.114.114'))

 

#通过IP/port组合,访问服务器信息

# 如果是AF_INET则格式为:(address, port),如果为AF_INET6,则返回(address, port, flow info, scope id)

 

print(socket.getaddrinfo('www.xunlei.com',80))

910764585-5bb9dc60ae25d_articlex.png

阅读剩余部分

相关阅读 >>

Python实现获得当前目录以及上级目录的方法

Python flask实现分页效果的实例详解

Python中关于前后缀操作的详解

Python如何获取列表长度?(代码示例)

Python生成器与迭代器的区别

Python使用opencv读取图片的实例详解

Python怎么转化为字符串

找出numpy array数组的最值及其索引方法

Python实现购物车的简单实例分享

Python中如何用django连接数据库(图文)

更多相关阅读请进入《Python》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...