解决爬虫们的大部分障碍——mitmproxy使用初探

Python013

解决爬虫们的大部分障碍——mitmproxy使用初探,第1张

mitmtproxy即mitm+proxy,顾名思义是中间人攻击加代理。用于中间人攻击的代理首先会向正常代理一样转发请求,保障服务器与客户端的通信,其次,会适时的查、记录截获的数据或 篡改数据 ,引发服务端和客户端的特定行为。

mitmproxy可以利用python实现高度定制脚本。因为mitmproxy工作在http层,现在的绝大部分的https拥有检测并规避中间人攻击的能力,所以mitmproxy工作时必须忽略浏览器的SSL证书或让其主动信任。由于此工具具有一定的黑产性质,使用时注意有所规范。

mitmproxy有三种启动命令,分别是mitmproxy,mitmdump,mitmweb,三个命令都会启动软件,区别在于交互界面的不同。

mitmproxy没有window,再次略过。

mitmdump启动后在后台默默运行,实用性不强,也略过。

mitmweb启动后,在8081端口开一个窗口,形如:

[图片上传失败...(image-369edf-1541148099114)]

接下来就是启动chrome,不过启动要设置代理,并忽略证书错误,命令行如下

上述工作完成后就可以开发自定义脚本了,这才是mitmproxy真正强大的地方。方法有两个:

1.编写一个 py 文件供 mitmproxy 加载,文件中定义了若干函数,这些函数实现了某些 mitmproxy 提供的事件,mitmproxy 会在某个事件发生时调用对应的函数。

2.编写一个 py 文件供 mitmproxy 加载,文件定义了变量 addons,addons 是个数组,每个元素是一个类实例,这些类有若干方法,这些方法实现了某些 mitmproxy 提供的事件,mitmproxy 会在某个事件发生时调用对应的方法。

推荐使用第二种方法。

事实上考虑到mitmproxy的实际使用场景,大多数情况下我们只会用到针对HTTP生命周期的几个事件。只会用到http_connect/request/response三个时间就能完成大多数需求了。

详细使用还在研究中。敬请期待。

行业内流传着这么一个说法:“如果没有了易语言,那么外挂将减少一半”。我见过老老实实打工成程序员(架构),最多一年可以挣到三五百万,但是和写外挂的程序员相比,确实还是有一些差距的(外挂就是外挂,还叫什么 游戏 辅助)。

易语言的初衷

易语言的出现可以追溯到20年前,它的设计初衷还是很好的,先不讨论易语言是不是在英文编程之上加了“一层皮”,易语言的出现确实突破了英文编程的限制,降低了编程的门槛,可以让不懂编程和英文的人,经过简单的学习就可以学会编程。

所以如果只看易语言的初衷,还是值得称赞的,易语言在中文编程做出的贡献是值得鼓励的。

走着走着,走偏了

易语言的前景不是很明朗,更新很慢,而且社区支持并不强大,语言生态比较差。

顺便说一下【生态】这个问题,很多人理解这个词有一些困难,举个例子:比如安卓和Window phone,大部分APP都有安卓版本,不一定有Window版本,这就是生态的好坏。

结果易语言没在主流道路上快速发展,却在“非主流”的道路上一发不可收拾。

早期国内对于 游戏 外挂没有正式的立法限制,后期有正式立法之后,由于 游戏 行业的高速发展,还是有很多人禁不住金钱的诱惑,想利用外挂谋取高额的回报。

这时候有编写外挂能力的程序员开始编写动态库,把外挂的基本功能封装到动态库里进行出售,这样既可以获取到高额回报,又不直接参与外挂的销售或使用;而拿到“外挂内核”的人,使用易语言进行简单的包装,就可以完成外挂的制作。

在这种背景下,让易语言在外挂制作行业中,占领了一席之地。

不过再怎么说,外挂的开发、销售、使用违反了法律的规定,在我国法律中属于非法互联网出版活动,情节严重的,可构成非法经营罪。

所以奉劝正在正在使用或者考虑使用易语言进行外挂开发的程序员,还是能“安守本分”一些,千万不要变成“易语言从入门到入狱”。

我将持续分享Java开发、架构设计、程序员职业发展等方面的见解,希望能得到你的关注。

坦白来讲易语言现在能慢慢流行起来还是有一定 历史 原因的,易语言设计之初带着美好愿景,让中国人拥有自己的编程语言,突破英语限制,让一些起点低的人也能使用中文编程,在诞生之初还是赢的了很多人的赞誉,但很多标准的程序员觉得只是在现有编程语言的基础上加了一层皮而已,没有多大的创意在里面,无论怎么样起码不懂得英文的可以借助这个平台在里面实现编程的功能了。

为什么很多人采用易语言去做 游戏 的辅助?

这件事说起来,还存在一定的时代背景, 游戏 外挂在2008年之前国内还没正式的立法,属于法律的空白期,在这之前 游戏 的外挂或者辅助之类的软件开发人员基本上都或多或少的挣了不少钱,但真正立法之后从事这块的人员已经减少了很多,因为直接参与外挂的编写并且产生经济获利就能构成犯罪了,但 游戏 行业还是如火如荼的发展,还是有很多人挡不住金钱诱惑想在这面捞上一笔。

特别是一些学历不高,但是想着通过这个产业发财的人还是大有人在。但因为国家已经立法了,所以很多真正具备编写外挂能力的技术人员,想出来另外的一种方式,就是编写一套dll文件,就是动态库,把外挂的基本功能封装成库卖给直接参与开发的人员,着中种算是打了一个擦边球,直接参与的开发人员大部分属于一些想着发财,但学历起点不高的人,所以易语言在这种场景下算是有了极大的生存空间,所以现在网络上很多 游戏 辅助的都是易语言弄得,界面很丑陋,但能完成基本的辅助功能自动回血,打怪等等基本操作,当然 游戏 外挂不仅仅是通过易语言来设计,有些简单重复的动作可以直接使用按键精灵等模拟按键的操作。

记得在06年左右有个同事专门做腾讯的 游戏 外挂,后来被腾讯告了,但由于当时对于外挂还没有立法,里面呆了三个月,除去罚款还获利了几百万,据说直接从北京辞职回老家过小日子去了,很多人都想着一夜暴富,但现在的立法越来越完善,漏洞也会越来越少,而且做这种事情毕竟属于不见光的行径,既然有了这种编程技术倒不如老老实实做一个技术人员,真要对于技术有一种特殊的爱好坚持下去,不断的积累打磨一样可以让日子过得很充裕,而且还能做的正大光明,心怀坦荡。

任何一种语言的发展过程都不会一帆风顺,虽然易语言已经有些年头了,现在的名声也不全是正能量,随着时间推移,以及技术的不断更新,一定会有一个非常大的前景,毕竟是唯一一款可以用汉语编程的语言,还是具有很大的影响意义。

奉劝一些想在 游戏 外挂或者辅助捞一把的人,倒不如踏踏实实学一门编程语言,真要是一个编程的好手,做什么都能让自己发光发热。

希望能帮到你。

曾经有很多人使用易语言,在法律的空白期,兜售外挂,大捞一笔。除去外挂一说,易语言从诞生到现在,系统更新迭代简直可以用龟速来形容,且社区支持不强大,语言生态较差。这也是任何一门行业的禁忌,如果不注重创新,就只能被比下去。 (全文700 1000字,预计耗时3分,文末有免费软件【5并发】相送)

当代人,处理工作都追求时间短,效率高!“低代码”这个名词,便应运而生。

编程,已经不需要学习各种高级语言

在低代码开发工具上面编程,你完全不用学习任何一门语言,别说C,C++,Java,python......就算是入门门槛低的易语言,也不需要学习。

当然啦!编译也用不上,更不需要像excel那样要借助VBA,才能开发软件。

就拿云表来说,这款低代码开发工具,在管理软件开发领域方面,已深耕10余年,并有了很大的建树。

在云表这里,使用者只需要像在excel的界面上,拖拉拽,以画表格的形式的编程,就能搭建出各种管理软件和报表。比如说像管理软件WMS、CRM、ERP、OA、BI、SRM、BPM、进销存、车辆管理系统、教务系统......像报表有损益表、现金流量表、财务报表、采购单、离职档案、报销单、销售单......

知道你会不服气,但云表能做的不止这些

你或许会觉得它不靠谱,但我可以肯定的告诉你,放一万个心!

云表是以Java为基础搭建出来的,内嵌了MySQL数据库,用户不需要再专门去维护数据库和系统,这些底层的IT技术可以放心交给云表的研发团队。

也就是说,你专注于自己的业务流程就行!没有代码,不懂数据库,照样可以“拖拉拽”编程开发软件。

而像日常的业务功能:数据透视、数据分析、一物一码、扫码入库、PDA集成封装、外接数据源、连接API网关、与用友金蝶等第三方系统集成、预警提示、质量监控、生成可视化商业大屏、权限控制、海量用户在线协同办公、生成移动端APP......等等,只要是你需要的业务功能,在云表这里,基本上都能实现。

你以为这样就完了吗?像云表这样的“拖拉拽”的独特表格编程方式,不仅方便业务人员,在任何时候,都能按照需求对软件的功能进行重新的增删查改,而且这种开发方式,效率高于代码开发的5 8倍。

而这也催生了一种另类的程序员,一种不用写代码,不用学高级语言,懂中文,会业务的程序员。

事实上,很多人也在用云表,给别人开发进销存之类的管理软件,用几天的时间,来赚几千到几十万不等的“外快”。

还是不认可?看这里

华为、海尔、中国电信、首钢、中冶、华风气象、恒逸石化、航天科工委、国家道路与桥梁工程检测设备计量站、燕山大学......各种知名企业、事业单位、知名高校,都在用它来开发自己的管理软件。你觉得它有没有发展前景呢?这里我不发言,把话语权交给你!

上图为用云表生成的移动端APP。

最后,免费的获取方式在此奉上:

获取方式:

说到底,所有的语言、工具都是实现目标的手段,哪个工具更快、更高效,我们就应该选哪个!

易语言制作windows窗口软件,上手快,最大的好处是,单文件,兼容大部分的window版本,对于黑产客户比较方便。大部分定制的人就是喜欢,打开就能用,点击按钮就有效果,至于什么效率,只要比手动快就足够,

99年上大学,那时的技术文档都是英文。一些大虾认为我们水平不高的主要原因是语言的问题,聪明的中国人被蹩脚的英语耽误了!于是有人写了E,这种中国人自己的编程语言!

在我看来这门语言是中国一代IT人为了梦想迈出的第一步,无论它好或坏都请各位尊重它!

我本人就是易语言使用者,客观的说您的观点是错误的,易语言本身的设计就限制了发展空间

因为都是灰色的比较多

其实吧,易语言写简单的小程序(外挂还真不属于简单小程序里,因为牵扯到 游戏 寻址和乱七八糟需要考虑的种种问题)是很简单的,如果说做一个正八经稍微大一点的程序跟其他语言差不多,而且易语言程序在稳定性方面还是有很多不尽人意的地方,误杀也是,再者,在这不得不提到编程思想,如果说没有很好的编程逻辑用再好再流行的语言也是渣渣

以前学c+ ,难, 后来上手易语言,自己摸索 ,最方便的就是外挂, 另外做些辅助自己的东西特别快 方便。感觉就像VB。

后来在公司运行过一次程序,报毒拦截。所有人都知道了

还是转学其他的了

都是灰产,取巧性比较大,不过高级的都是有其他编程底子的,其他行业一样风生水起

从事软件开发多年主要在浏览器内核,安卓框架,多媒体等领域研究的比较多,主要编程语言是C/C++ java等三种编程语言,对于易语言简单做了几个小功能,做了下尝试,从本质上讲差异不是很大,都是需要遵循一些语法细节,可能是用的时间短的缘故整体感觉还是怪怪的,主要是长期在英文编程环境下已经养成习惯,至于是不是中文倒是没有太大的感触。

说到对易语言接触时间也不短了,刚入行不久喜欢写一些技术博客,也算是结实了一些粉丝,和有些粉丝聊得比较多,其中一个人在研究易语言想通过易语言做注册机,从技术上角度不太喜欢玩这些看似很无聊的东西,架不住三番五次的劝说就多少了解一下易语言,然后看看如何实现,弄了没多久觉得实在无聊,就果断放弃了,纯正的程序员一般不太喜欢搞什么 游戏 外挂或者黑产之类的东西,但现在很多学历不高的人通过易语言在鼓捣这些东西,想从中谋取暴利,国家已经有明确的法律规定对于非法的 游戏 收益真要有人较真到底,还真是违法犯罪的事情。

有个同事讲过一个故事,有个人专门研究腾讯的一款 游戏 ,然后从中获取了几百万的收益后来被发现并报警,由于但是立法还不太完善,在里面呆了几个月罚了点钱又放出来了,易语言诞生的年份已经不短了,当初带着极好的爱国主义情怀,喜欢有一个属于中国人自己的编程语言,虽然在内部实现上可能就做了一次转化而已,起码让一些英文不好的人能上手写代码了,这算是易语言最大的贡献了。

任何一种编程语言的诞生或者存在都是为了解决当时非常棘手的问题,然后慢慢的被大家接受,通过时间的积累慢慢培养了生态链,也就是大家常说的各种编程社区,然后一群志同道合的人在里面讨论这种编程语言如何来使用,如何来改进,如果是深层次的参与者慢慢加入到核心修改小组,不停的对编程语言的版本以及未来的发展趋势做贡献,现在主流的编程语言都是这么衍生而来的,社区力量的强大与否代表着当前这种编程语言的受欢迎程度,目前就国内的编程语言而言无疑java属于老大,在开源社区里面java方面的开源项目最多,这就是生态链,生态链的建立不是一天两天的事情,需要具备很多因素,还要跟上时代的潮流。

1.编程习惯,绝大部分程序员已经习惯于英文字符的编程模式,切换成中文有诸多的不习惯,而且就编程语言的本质而言最终还是0,1的转化,中间做了一些转化而已,在执行效率上还不如英文转化效率高

2.生态链不够成熟,对于编程语言的使用者来讲什么编程语言最能解决实际的问题就采用谁,这也是生产力发展的需要,不可能为了追求狭义的爱国主义情怀就是采用一种编程语言,易语言的生态链体系哈有待继续的加强发展,毕竟任何一种编程语言都需要来自五湖四海的程序员来共同托起。

3.易语言在某些场景下还是受限,举个例子在服务端的并发性处理上就有点捉襟见肘了,不可能一种编程语言就一统天下了,这种需要强大的生态链支持,就目前状态而言易语言要走的路还是很长。

对于一个技术人员来讲,在合适的场景选择合适的编程语言,选择最佳的实现方式,毕竟对于企业来讲首先要考虑最短的时间内出成品,所有的企业的程序员都是遵从现实环境,真能解决实际问题的编程语言,本身就自带推广特性。

希望能帮到你。

实话实说,我是没有接触过中文编程的,对中文编程届名气最大的“易语言”,也只是听说过但是没用过。虽然我本身是对中文编程是比较排斥的,但是出于“想评判什么,就要先了解它”的考虑,我还是决心体会一下中文之后,再来回答这个问题。

然后我找到了“易语言”的官网,看了一眼首页我就放弃了这个想法,本人对美丑的要求很严格。

对于中文编程,我就强答一下,说说我的看法。

首先,中文编程还是发展初期,语言生态不好。不可否认中文编程确实降低了编程的门槛,易语言在中文编程做出了值得鼓励的尝试。易语言目前的前景不是很明朗,易语言好像是2000年就出现了,差不多快20年了,我翻了翻官网,感觉很久没有更新了,而且社区支持并不强大,所以并不看好。顺便说一下【生态】这个问题,很多人理解这个词有一些困难,举个例子:比如安卓和Window phone,大部分APP都有安卓版本,不一定有Window版本,这就是生态的好坏。

第二,英文编程已经先入为主了,就好像我,做Java开发已经12年了,自学Python3年,这么长时间已经习惯现有的编程体系了,要切换成中文环境感觉完全没有必要。而且现在中文编程的生态又不成熟,所以不接受甚至排斥中文编程,也是很正常的事情。

第三,编程思想的重要性要远远大于编程语言。其实不用过分纠结于使用什么语言,编程最重要的是对事务的抽象能力,逻辑思维能力,和对不同的业务场景,可以采用最优方案的能力。如果有一天老板说:“从今天开始,咱们公司要用中文编程了,工资增加一位数”,我相信我很快就能学会的。

最后,每一种语言的兴起,都是因为可以很好的解决行业的某些痛点。比如PHP的兴起是因为互联网需要快速的编写动态Web服务;Java的兴起是适应企业级信息化,Java屏蔽了指针、内存、垃圾回收等等,可以在短时间内写出大规模的程序;而易语言,好像解决的是“想编程但是不会英文”的问题,至少在编程行业内,我们是不存在这个痛点的。

总结一下:

这个问题,本人比较合适来解答一下。我的文化水平高中,英语非常烂。10年做自动外挂 游戏 工作室,苦于没有合适的外挂辅助,自己从零开始研究编程。起初学习了按键精灵和易语言,可以做一些小程序小 游戏 ,又做了一些操作模拟脚本。后来学习了汇编,才可以做真正意义上的外挂。用易语言做了3年多中文编程,后来为了去上班学习了php,c,python,java,sql这些英语编程,开发过大型网站前后台,手机app,小程序微商城。其实编程用什么语言都是大同小异,除了个别语言之外用法都差不多。唯一的区别是用处不同、编译环境和编译器不同。可能和人先入为主的观念相关,几乎每个人学习的第一个编程语言都是英文编程,所以都很倾向英文编程,用易语言自然不习惯!而我,第一个接触的编程语言是易语言,自然对中文编程更有感觉!

大家好,我从97年开始学习编程,到今年20余年了吧,代码是写过不少。

看到这个话题我也来凑个热闹。

1、从语言的角度来说中文编程和英文,没有区别,无非一个用“如果”,英文用“if”罢了,其本质没有变化,还是用着老外的编译器,算不得中文编程,顶多算个汉化版的开发语言而已。

2、如果你每天真的要写上千行的代码的话,你会觉得频繁的中英文切换实在是太麻烦了,英文if只是两个键,中文要敲几个键呢。我最高英文打字速度是300,中文是120,说实话,我愿意用英文写代码。

3、现在的语言都是Unicode编码的,你可以用中文做变量名,编译器不会拦着你,但是同行会笑死你,鄙视你的。

4、目前所有语言大多都是老外开发的。所以你想查的资料,文档基本上都是英文的。

5、我希望有哪么一天咱们国家也能真能开发出自己的操作系统,数据库,编程语言,咱们自己的标准,大家一起努力吧。

希望大家不要再为语言而纠结了。

需求:某个变量循环十次,每次的值都加1

java:for(int i=0i<10i++){}

易语言:循环体(整形 变量 等于 零 ;变量 小于 十;自增 变量)

首先我们来分析阅读性,假如一个外行人来阅读这两份代码,虽然不知道for什么意思,int什么意思,但我相信正常人至少都能看懂第一份代码i=0这一行吧;但是再来看易语言写出来的代码,循环体啥意思,我只听过循环,循环体是干啥用的?整形?整形变量?还是整形变量等于?都说汉语博大精深,在不使用逗号的前提下汉语的可读性理解起来就可以有很多种意思了。

我们再来看二者的格式,容易看出来其实易语言不过是相当于把英语全部翻译了一遍,翻译后的代码仅限于我能读得懂而非看得懂。再看一下,易语言的代码量比英语多了多少?

汉语是我们的母语,如果能开发一门易懂的汉语编程语言,那么我想这无非会大大降低我们的开发门槛。但是我们需要强调的是,汉语编程语言不是简单的“翻译”,我理解中的汉语编程应该是可读性高、理解容易。例如上面的例子,如果要我“开发”的编程语言来写,我会写成这样

条件循环(变量初始值等于零;假如变量的值小于十;那么变量的值每次加一”){};

这样的写法我相信任何人都能看懂读懂知道他的用法理解这个代码是用于做什么的。这才是真正的汉语编程。如果要只是翻译英文编程语言,那么我为何不直接学英文编程语言,我学会了英文编程语言也就意味着我的编程能力拓展性更高,毕竟现在市面上无论是已有技术还是新的技术都是英文写出来的

中文编程,我可能比较有发言权