分享

python利用socket库搭建服务器

 AnonymousV脸 2018-08-14

这个公众号终于要慢慢的转向技术了,当然吃喝玩乐方面的也少不了

做一个左手敲钢琴,右手敲代码的极度浪漫的现实主义者

今天向大家介绍如何利用python搭建自己的服务器

首先第一点,我眼中的服务器,范围可能有点宽泛,我认为只要能有IP地址的(不管固不固定)计算机或者系列主卡,都可以作为服务器。

进项向大家介绍的是利用腾讯云的服务器,来建立一个,能够自动获取客户端发送信息并处理的程序

python的socket库可以说非常发达,但是调用起来也无非就几个步骤

服务器端的基本流程:

1.初始化socket()

2.使用bind()绑定ip和端口号

3使用listen()监听消息

4.获取客户端的套接字地址accept()

5.使用recv()接收数据,send()发送数据与客户端进行交互

客户端的基本流程:

1.初始化socket()

2.使用ip和端口号connect()连接服务器

3.使用recv()接收数据,send()发送数据与服务器进行交互

在Python的Socket无外乎就两个主要方法,一个是发送数据的send()和接收数据的recv(),所以想要做好交互,只要做好两边接收和发送的操作即可。

首先介绍服务端

如果大家没有自己的服务器的话,可以通过以下方式来获取本地IP

windows +r 输入 cmd 打开命令行工具 输入ipconfig 查看IP地址

将来就可以连接这个IP

为了防止连接过程中出现问题,大家可以先将windows的防火墙关掉,或者开启指定端口来通信

步骤

看注释即可明白这是初始化服务端的基本操作,绑定的时候也可以写成localhost,都代表本地IP,5005为端口号

如果连接成功,就可以直接等待数据发送了

断开连接

其实总结起来,是完全按照上述的几点在执行的,难度不是太大。

个人认为在服务器端程序处理上,python完全可可以和php相媲美

然后我们再来看发送端,发送端其实并没有太多的参考价值,因为大家的发送端可能各不相同,所用的硬件设备,编程语言都会有所不同,比如GPRS模块的嵌入式C语言编程,Android上的java编程,Pc上的各种语言,编程,其实思想就如上面所说 总结起来就两步骤

建立连接,收发消息

当然对于不是固定IP地址的服务器,在客户端就要通过自己的设计来手动输入地址来解决问题了。

在这里我介绍的还是利用python来模拟一个客户端来建立连接

第三行注释的部分就是手动输入IP

随后在利用send函数,发送数据即可。

注意:

在发送数据的时候,socket支持的是二进制格式,所以在发送接受的时候,我们需要转码再解码才可以

成功后大约是如下界面

看到这里大约就算成功了

如果大家喜欢python,可以一起交流

有什么问题也可以互相讨论

聊一聊会有好处的

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多