
Python
记录Python学习相关
Ha啤酒来大杯的
不会就问我,问了也不一定会
展开
-
python 安装Crypto还是显示 ModuleNotFoundError: No module named ‘Crypto‘
python3报错:ModuleNotFoundError: No module named ‘Crypto‘原创 2023-03-15 15:31:39 · 1091 阅读 · 0 评论 -
前向代理/反向代理
前向代理/反向代理代理就是HTTP服务器,扮演服务器接收客户端请求,扮演客户端发送请求至真正的服务器、最后将从服务器收到的响应发送给最初的客户端。前向代理:客户端必须设置前向代理服务器正向代理前向代理应用:1、访问本来无法访问的服务器:原本用户A访问服务器B需要经过路由器,可能路由器发生故障,这是就可以使用前向代理。2、cache:如果用户A访问用于B某个资源,之前有用户也访...原创 2020-04-06 21:02:22 · 218 阅读 · 0 评论 -
HTTP协议
封帧对于请求体封帧:第一行和头信息都是通过表示结束的CR-LR来进行封帧。而这两部分作为一个整体通过一个空行(也就是2个CR-LR)来封帧。这样调用recv()来接收这2部分信息,直到遇到CR-LR-CR-LR为止。PS:CR : 表示\r,回车。LF :表示\n,换行对于消息体进行封帧(3种方法):1、利用Content-Length,其值是十进制。recv()接收,直到接收...原创 2020-04-01 16:46:04 · 202 阅读 · 0 评论 -
缓存与消息队列
Memcached(内存缓存守护进程)客户端将会访问一个组织级速度极快的键值缓存,它像是所有服务器之间共享的python字典,该缓存基于LRU(长时间未访问,将会被移除)。PS:当Memcached客户端得到包含了多个Memcached实例列表时,会根据每个键的字符串值对Memcached数据库进行分区(shard),由计算出的散列值确定用集群中哪台服务器来存储特定的记录import m...原创 2020-03-31 16:54:30 · 1341 阅读 · 0 评论 -
多线程/进程及异步服务器
单进程服务器(zen_utils.py)选自网络编程第三版,注释改为了中文#!/usr/bin/env python3# Foundations of Python Network Programming, Third Edition# https://github.com/brandon-rhodes/fopnp/blob/m/py3/chapter07/zen_utils.py# C...原创 2020-03-29 19:09:32 · 137 阅读 · 0 评论 -
TLS/SSL
TLS(传输层安全协议)TLS的前身是SSL(安全套接字)TLS能保护的信息包括:与请求URL之间的HTTPS连接以及返回的内容、密码、cookie等可能在套接字双向传递的任意认证信息但仍然有些信息是可见的:1、本机与远程主机的ip地址2、客户端与服务端的端口号3、在进行DNS查询时,该查询在通过网络发送时也是可见的python中使用TLS:1、先创建一个配置好的SSLcon...原创 2020-03-29 18:31:03 · 211 阅读 · 0 评论 -
python套接字getaddrinfo使用
利用getaddrinfo()为服务器绑定端口>>>from socket import getaddrinfo as gai>>>gai('127.0.0.1','smtp',0,socket.SOCK_STREAM,0)>>>[(<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_...原创 2020-03-25 17:05:22 · 233 阅读 · 0 评论 -
python - UDP
混杂客户端(promiscuous)不考虑地址是否正确, 接受并处理收到的所有数据包的客户端,一般在网络监听,监控到达某个端口所有数据包时,会使用。udp套接字、connect()调用相关import socketsendto()时需要每次给出服务器地址如果调用connect()将直接使用send就可以了,接受用 rec()connect()会与目标连接起来,操作系统会将不是...原创 2020-03-24 10:07:24 · 119 阅读 · 0 评论 -
TCP/IP
TCP是如何提供可靠服务1、每一个tcp数据包都有序列号,可以知晓传输中丢失的数据包,并重传2、 序列号使用的是随机的,并且举个例,如果1024字节的数据包序列号为7000,那么下一个数据包的序列号便为80243、流量控制:接受方可以通过控制发送方的窗口大小来延缓或者暂停连接,如果此时数据包到来,将会被丢弃4、拥塞控制:慢开始、拥塞避免、快速重传、快速恢复这四个后面再加、占个位置三次...原创 2020-03-24 10:07:06 · 92 阅读 · 0 评论 -
conda使用相关
创建虚拟环境conda create -n 虚拟环境名字 python=版本查看虚拟环境conda env list激活/关闭activate 虚拟环境名字deactivate安装包到虚拟环境conda install -n 虚拟环境名字 package删除虚拟环境conda remove -n 虚拟环境 -all删除环境的包conda remove --name 虚拟环境 ...原创 2020-03-23 16:35:51 · 628 阅读 · 0 评论