![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
网络编程
苏大强太强了
心怀梦想,砥砺前行。
展开
-
linux的select实例
我用set存储文件描述符,复杂度会更高。如果用vector管理所有文件描述符的话,一个描述符连接关闭删除复杂度较高。用set在Log复杂度删除,感觉更方便一点。复杂度更低的一个思路:开辅助数组/Vector存,再开一个数组存标志位(是否连接)。//复用服务器#include <unp.h>#include <iostream>#include <set&...原创 2020-05-04 12:35:43 · 408 阅读 · 1 评论 -
Pyqt简易计算器
Pyqt实现,四则运算运用了内置函数。主控制类(文件名任意):import MainWinimport sysfrom PyQt5.QtCore import pyqtSlotfrom PyQt5.QtWidgets import QApplication,QMainWindow,QWidgetclass mainctl(QMainWindow,MainWin.Ui_MainWindo...原创 2020-02-20 17:26:49 · 488 阅读 · 0 评论 -
记一次开发软件的灵感或者说冲动
我灵感的来源: 常用TCP和UDP的人都知道,编写客户端或者服务端程序,在本机测试还需要再编写相对应的程序进行测试(客户端程序需要编写简单的服务端接收连接,服务端程序需要编写客户端进行测试)。 当然,市面上现在存在一些测试软件,我找到的一个是测试tcp和udp的SocketTool,一个是测试http接口的Postman。前面的SocketTool创...原创 2020-02-13 09:46:58 · 574 阅读 · 3 评论 -
简单的xmlrpc服务器
服务器程序from xmlrpc.server import SimpleXMLRPCServerserver=SimpleXMLRPCServer(('localhost',12345))def test(): print('测试') return 1server.register_function(test)server.serve_forever()客户端程序...原创 2020-02-10 16:16:00 · 257 阅读 · 0 评论 -
Python3搭建http服务器
在本机搭建Web服务器其实也有更简单的方法,可以利用iis功能。可以自行搜索本机iis搭建Web服务器。不用写代码,Windows自带的web服务器功能。Python2提供了BaseHTTPServer模块,不过在Py3把它合并到了http.server中。老教材用BaseHTTPServer你可以直接用http.server代替即可。这里利用http.server搭...原创 2020-02-09 20:27:44 · 1599 阅读 · 0 评论 -
SSL/TLS加密原理
HTTPS=HTTP+SSL/TLSTLS是SSL的升级版,SSL由于某种原因被废除了。https是在http基础上进行了加密保护,这个加密协议就是tls,利用抓包工具可以看出我们用浏览器访问http网页和https网页的不同,https多出了许多数据包。1.下图是加密过程客户端提交https请求服务器响应客户,并把证书公钥发给客户端客户端验证证书公钥的有效性有效后,会生成一个会...原创 2020-02-08 17:06:17 · 1178 阅读 · 0 评论 -
解决FTP服务器密码正确却登不上的问题
综合和很多博客,这是登录上去后的图。首先明确这是服务器(计算机)账户名密码,不是自定义身份认证这个。既然启用了匿名登陆不用用户名密码也是可以登录的。访问ftp服务器在于访问这个主机的文件,你当然得有个身份,所以用户名是服务器的账户和密码。注意几点:1.密码是服务器(计算机)的用户名密码,不是匿名登陆的那个。2.你要保证你登录的这个用户有权限能够访问到文件,不然去iis编辑权限。3....原创 2020-02-07 16:30:50 · 24409 阅读 · 0 评论 -
Python简单程序爬取天气信息,定时以邮件发送给朋友
前段时间看到了这个博客。https://blog.csdn.net/weixin_45081575/article/details/102886718。他用了request模块,这不巧了么,正好我刚用过。他有了smtp模块,这不巧了么,正好我刚用过。定时发送邮件,这不巧了么,我不会 。整体思路:Python语言封装了很多模块帮助你进行通信,所以写起来相对简单。、1、https://d...原创 2020-02-06 21:20:03 · 2801 阅读 · 0 评论 -
Python网络编程Twisted框架学习(三)、关于defered
除了反应器 reactor 之外, Deferred 可能是最有用的 Twisted 对象。你可能在 Twisted 程序中 多次用到 Deferred , 所有有必要了解它是如何工作的。 Deferred 可能在开始的时候引起困惑, 但是它的目的是简单的:保持对非同步活动的跟踪,并且获得活动结束时的结果。 Deferred 可以按照这种方式说明...原创 2020-02-06 18:43:29 · 471 阅读 · 0 评论 -
Python网络编程Twisted框架学习(二)、reactor,protocol,factory
Twisted是一个码量很大的一个框架,不够轻盈。 学习Twisted或者说学习怎么使用Twisted,必须知道reactor,protocol,factoroy的含义。 reactor是管理twisted框架的核心。所有的事件都会触发reactor,然后他会开启服务,初始化factory,factory再初始化protocol。常用的有run()...原创 2020-02-06 18:08:39 · 1002 阅读 · 4 评论 -
Python网络编程Twisted框架学习(一)、Twisted理论基础
Python有四大主流网络编程框架,Django、Tornado、Flask、Twisted。关于每种框架的介绍,可以自行搜索。 Django更适合Web方面,Twisted更适合网络服务器。 Twisted是基于事件的一个框架,以reactor为一个大循环,收到事件根据事件状态再跳转执行某个对应的函数。主要有Protocol,Factory,Tr...原创 2020-02-06 16:52:41 · 537 阅读 · 0 评论 -
windows查看某个端口状态,以及占用的程序
windows查看所有端口状态:netstat -ano协议类型,ip地址+端口号,发送到外部的地址,状态,PID即进程号。筛选出来我们想要的端口:如443netstat -ano|findstr “443”找到对应的PID,如第一行对应的8776,进程号为8776,表示这个进程正在占用这个端口。找到占用的程序:tasklist即列举所有正在运行的进程,|后面跟筛选条件。taskl...原创 2020-01-14 22:41:43 · 1900 阅读 · 1 评论 -
Python语法学习总结 二、语法学习总结
学习了一段时间的Python语法,做一个总结。 最后用Python又做了几道题,在数组方面还是有点不舒服。但是Python码量较少,如C++40多行的代码用Python仿照,只写了大概20行的代码。当然C++头文件就快10行了。Python语法强大功能强大封装性强大对比:C++版本://拼数//挖的有坑,呜呜呜呜呜。//注意321 32 这种,321大,但是它不一定是最小的。 #...原创 2020-01-13 23:28:04 · 108 阅读 · 0 评论 -
Python语法学习 一、简单的数组,变量,字典等
Python真的好强大!!! 大一的时候接触了一点Python,这中年人的记忆力早已让我忘掉(记得当时做了个三维弹球),总结来说就是只对着书敲代码是不会学到东西的。敲过一遍之后,没有实践就会忘得一干二净,如果尝试用Python经常性写写算法题,语法方面你就没有了障碍。 归根揭底还是要多练习。Python封装性很强,表现在它对数据类型的那种兼容性(泛型)。你定义数组,变量完全不需要自己定义类...原创 2020-01-09 22:32:19 · 166 阅读 · 0 评论 -
初入网络编程
经过多年的网络编程实践之后,个人觉得初学网络编程者可以从以下几个步骤开展: 1)下载一个可以互动的学习工具,通过这个与这个工具互动,我们可以及时的学到每个api的结果如果。我个人强烈推荐一个互动好工具,即python,下载地址http://www.python.org 对于有c/c++或java基础的朋友通过一两个礼拜的时间就可以上手了,...转载 2019-12-22 21:11:46 · 111 阅读 · 0 评论