搜索到与相关的文章
Python

仅用50行Python代码实现一个简单的代理服务器

之前遇到一个场景是这样的:我在自己的电脑上需要用mongodb图形客户端,但是mongodb的服务器地址没有对外网开放,只能通过先登录主机A,然后再从A连接mongodb服务器B。本来想通过ssh端口转发的,但是我没有从机器A连接ssh到B的权限。于是就自己用python写一个。原理很简单。1.开一个socketserver监听连接请求2.每接受一个客户端的连接请求,就往要转发的地址建一条连接请求。即client->proxy->forward。proxy

系统 2019-09-27 17:50:32 2284

Python

python使用mitmproxy抓取浏览器请求的方法

最近要写一款基于被动式的漏洞扫描器,因为被动式是将我们在浏览器浏览的时候所发出的请求进行捕获,然后交给扫描器进行处理,本来打算自己写这个代理的,但是因为考虑到需要抓取https,所以最后找到Mitmproxy这个程序。安装方法:pipinstallmitmproxy接下来通过一个案例程序来了解它的使用,下面是目录结构sproxy|utils|__init__.py|parser.py|sproxy.pysproxy.py代码#coding=utf-8fro

系统 2019-09-27 17:50:22 2284

Python

详解Python并发编程之创建多线程的几种方法

大家好,并发编程今天开始进入第二篇。今天的内容会比较基础,主要是为了让新手也能无障碍地阅读,所以还是要再巩固下基础。学完了基础,你们也就能很顺畅地跟着我的思路理解以后的文章。本文目录学会使用函数创建多线程学会使用类创建多线程多线程:必学函数讲解经过总结,Python创建多线程主要有如下两种方法:函数类接下来,我们就来揭开多线程的神秘面纱。.学会使用函数创建多线程在Python3中,Python提供了一个内置模块threading.Thread,可以很方便地

系统 2019-09-27 17:49:58 2284

Python

Python实现TCP通信的示例代码

使用socket实现tcp通信,需导入socket模块1、服务端主要步骤:(1)创建socket:socket.socket(family=AF_INET,type=SOCK_STREAM,proto=0,fileno=None)family:AF_INET,AF_INET6,AF_UNIX,AF_CAN,AF_PACKET,AF_RDStype:SOCK_STREAM,SOCK_DGRAM,SOCK_RAW,或者其他SOCK_*proto:一般使用默认值

系统 2019-09-27 17:48:40 2284

Python

python获得图片base64编码示例

复制代码代码如下:#!/usr/bin/envpython#-*-coding:utf-8-*-importos,base64icon=open('ya.png','rb')iconData=icon.read()iconData=base64.b64encode(iconData)LIMIT=60liIcon=[]whileTrue:sLimit=iconData[:LIMIT]iconData=iconData[LIMIT:]liIcon.append

系统 2019-09-27 17:48:33 2284

Python

希尔排序-python版

希尔排序思想:算法先将要排序的一组数按某个增量d分成若干组,每组中记录的下标相差d.对每组中全部元素进行排序,然后再用一个较小的增量对它进行,在每组中再进行排序。当增量减到1时,整个要排序的数被分成一组,排序完成。一般的初次取序列的一半为增量,以后每次减半,直到增量为1。defshell_sort(list):n=len(list)gap=n//2new_list=[]whilegap>1:foriinrange(gap):iflist[i]>list[i

系统 2019-09-27 17:48:17 2284

Python

在Python中变量名这样写,就是给自己挖坑

下面这样的一串代码相信很多人都写过,但可能除了你自己没有人看得懂:forrangeinrange(n):forjinrange(m):forkinrange(l):temp_value=X[i][j][k]*12.5new_array[i][j][k]=temp_value+150这并不是一段好的的代码,为了图省事,使用了简单而无实际含义的变量及数值,看起来在任何程序中都可以用,对于看的人来说就是灾难,因为要想半天或者查看上下文才知道你写的变量是什么意思,

系统 2019-09-27 17:47:28 2284

Python

python做中学(三)条件编译的用法

C代码中经常使用条件编译,python中该怎么用呢?Python没有像C或C或Java甚至Java一样编译,python文件被“即时”编译,您可以将其视为类似于Basic或Perl的解释语言只需使用if语句,就可以执行与条件编译等效的操作:我这里写了一个例子,希望对有需求的同学有点帮助:1#python223globalFLAG4FLAG=True5ifFLAG:6deftest1():7print('helloworld1')8else:9deftest

系统 2019-09-27 17:47:20 2284

Python

python的输入和输出

基本输出python中的输出使用关键字--print,与python2不同的是,python3的输出后面必须要加括号,示例如下:python3.0以上输出:python2.0以上的输出:格式化的输出在程序中看到输出的语句存在%(占位符),那么这就是表示格式化的输出%c字符%s通过str()字符串转换来格式化%i有符号十进制整数%d有符号十进制整数%u无符号十进制整数%o八进制整数%x十六进制整数(小写字母)%X十六进制整数(大写字母)%e索引符号(小写'e

系统 2019-09-27 17:47:14 2284

Python

【python】Leetcode(primer)

(2019.7.26)不断更新中……【python】Leetcode(DataStructure/Algorithm)【python】Leetcode(DynamicProgramming)【python】Leetcode(Map)【python】Leetcode(String)【python】Leetcode(Tree)【python】Coding(Interview)文章目录数字260.只出现一次的数字III(字典/位运算)136.只出现一次的数字(字

系统 2019-09-27 17:47:04 2284