加入收藏 | 设为首页 | 会员中心 | 我要投稿 唐山站长网 (https://www.0315zz.com.cn/)- 数据安全、数据开发、文字识别、图像处理、媒体智能!
当前位置: 首页 > 站长资讯 > 动态 > 正文

初学者必学的20个重要技巧

发布时间:2021-02-13 10:22:24 所属栏目:动态 来源:互联网
导读:作原理 对于工作方式你可能还是一头雾水,以自助餐托盘为例解释一下,你就会更加明了: 作为堆栈如何工作的一个例子,可以把它看成一个弹簧加载托盘分发器,这种类型经常在自助餐厅中发现。每个托盘上都刻有数字。托盘依次从顶部装入,每个托盘都放置在已经

作原理

对于工作方式你可能还是一头雾水,以自助餐托盘为例解释一下,你就会更加明了:

作为堆栈如何工作的一个例子,可以把它看成一个弹簧加载托盘分发器,这种类型经常在自助餐厅中发现。每个托盘上都刻有数字。托盘依次从顶部装入,每个托盘都放置在已经装入的托盘上,弹簧进行压缩,以便在必要时为更多托盘留出空间。例如,在图中,托盘编号为42、23、2、9,先装载42个托盘,后装载9个托盘。
 

的概念

栈(stack)又名堆栈,它是一种运算受限的线性表。其限制是仅允许在表的一端进行插入和删除运算。这一端被称为栈顶,相对地,把另一端称为栈底。栈就是一个桶,后放进去的先拿出来,它下面本来有的东西要等它出来之后才能出来(先进后出)

栈(Stack)是操作系统在建立某个进程时或者线程(在支持多线程的操作系统中是线程)为这个线程建立的存储区域,该区域具有FIFO的特性,在编译的时候可以指定需要的Stack的大小。
 

要了解堆栈,应将之拆开分析。

堆的概念:

堆(英语:Heap)是计算机科学中的一种特别的树状数据结构。通常是一个可以被看做一棵树的数组对象。若是满足以下特性,即可称为堆:“给定堆中任意节点 P 和 C,若 P 是 C 的父节点,那么 P 的值会小于等于(或大于等于) C 的值”。若父节点的值恒小于等于子节点的值,此堆称为最小堆(英语:min heap);反之,若父节点的值恒大于等于子节点的值,此堆称为最大堆(英语:max heap)。在堆中最顶端的那一个节点,称作根节点(英语:root node),根节点本身没有父节点(英语:parent node)。

 

就让人头疼了,总不能手动的去一个一个check我的几千个微信好友吧,于是我开始思考是否有其他的解决办法。

第二回合

如果你经常写Python爬虫,那么你会知道在有些情况下,与其使用Requests对付一些恶心的反爬措施,不如Selenium操作起来方便。所以在发现想使用基于微信API的思路失效后,我将目光转向了相对笨一点的方法————pynput

pynput是一款使用Python来控制和监控电脑鼠标、键盘的第三方库,说到这里你大概明白我想怎么做了,直接用API取数据搞不定,那么我就像Selenium一样,模拟点击一个一个好友来实现我想要的操作。

下面简单说一下这个库,因为没有太多依赖库所以安装起来很简单,直接pip install pynput即可,使用起来也很简单,对于鼠标操作只依赖坐标,看个demo👇

 

然不清楚是什么能够驱使他们这样不折不扣的努力成为最强微信群牛皮癣(可能是钞能力),但在经历太多次的骚扰之后,我开始思考是否可以用Python消灭他们。

第一回合

其实一开始的思路很简单,总共分两步,首先成功识别出这些人再用Python将他们踢出去即可。

但是这两步,每一步都不简单,先来说说第一步如何准确的识别这些用户,网上没有数据也没有一个好的鉴别标准,只能用我的大脑完成特征识别。经过这几个月,近百份发广告用户的样本训练,我这个“人工智能”基本可以判断一个非正常用户至少满足下面几条中的三条以上:

  •  没有设置微信号
  •  头像为网红女生
  •  微信名为特殊符号或者表情
  •  没发过朋友圈
  •  没有朋友圈背景图
  •  通过后不会有除进群申请外的其他回复

并且根据历史数据,符合1、3条的用户有极大概率为小广告爱好者,那么接下来要做的就是用Python写代码找出微信里面的这些人。在总结出这一规律后很乐观的认为实现这一需求并不困难,因为我在几年前就曾拿过Python研究微信好友,不论是wxpy还是itchat操作起来应该都不复杂,但是事实确证明我还是太年轻了

不知从何时起,虽然这些库还能安装使用但是微信基本已经禁止了大部分人的网页版微信登陆权限,因此当我使用多个微信号分别扫完登陆微信的二维码之后,无一例外的提示我


 

(编辑:唐山站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读