0

JS 反爬:一分钟了解如何用 debugger 劝退爬虫

背景爬虫之前,需要先对网站请求进行梳理,F12 打开浏览器的开发者模式是第一步,所以反爬虫的第一招就是,在开发者模式下让对手的浏览器进入 无限循环 debugger 。今天继续百度 “带有JS混淆加密的网站怎么破解”,看到一篇文章正打算参考测试时,浏览器就陷入了无限循环,两步之后,网站得意地宣布 “ 俺们是为人类服务的,你这机器就知难而退吧!”。好吧,知难而退之前,也得知道是怎么被打败的嘛。就顺道分析下人家的网站是如何反爬的,当是偷师学艺啦!无限 debugger本打算跟着一个网站看看 JS 混淆的流程,结果一打开这个空气质量监控平台就进入匿名函数的无限循环中了:进入开发者模式,就落入第一步“...

阅读全文>>

0

f-string:一种改进的Python格式语法

f-string是Python3.6提供的一种新的格式化字符串的方法。 与其他格式化方式相比,代码更具可读性,更简洁且不易出错,而且速度更快! 在本文中,您将了解如何以及为什么现在就开始使用f-string。在使用f-string之前,我们还是先了解下之前是如何处理格式化的。Python中的“老式”字符串格式在Python 3.6之前,有两种方法可以将Python表达式嵌入字符串字面量进行格式化:%-formatting和str.format()。您将看到如何使用它们以及它们的局限性。选项1:%格式这是Python格式化的元老方式,从一开始就存在于该语言中。你可以在Python文档中阅读更多内...

阅读全文>>

0

cit:让你从github的下载速度提高一万倍的小软件

序言github上有很多好项目,但是国内用户连github却非常的慢.每次都要用插件或者其他工具来解决. 这次自己做一个小工具,输入github原地址后,就可以自动替换为代理地址,方便大家更快速的下载. 速度太慢可以看下gitee仓库地址:https://gitee.com/solider245/cit github仓库地址:https://github.com/solider245/cit安装pip install cit# 代理安装路径pip install -i https://mirrors.cloud.tencent.com/pypi/simple cit主要功能与用法主要功能cha...

阅读全文>>

0

有了Git这个功能,再也不需要依赖IDE了

大家好,今天给大家介绍一个隐藏的功能——搜索。我们在写代码的时候经常遇到的一种情况就是,我们想要知道某一个函数是怎么定义的,这样我们才能知道该如何调用它。如果代码少的话我们当然可以自己人肉查找,但是如果代码量很大的话,人肉查找显然就不行了。如果使用IDE的话,现在的IDE当中当然一般都继承了这个功能,如果你像我一样喜欢编辑器而不喜欢IDE的话,可能就会麻烦一点。这个时候我们可以使用git grep命令帮助我们找到代码所在的位置。代码搜索比如现在我们在一个Python仓库当中,想要知道get_yaml_config这个函数究竟在哪里出现过,这样我们就可以找到它的定义和参数了。这个时候我们可以在命...

阅读全文>>

0

用Python写一个身份证号码校验工具

这是一个用Python开发的GUI实战项目:居民身份证信息校验系统一、总体介绍本项目使用Tkinter作为GUI模块,充分利用Python面向对象的思想,开发一款实现身份证号码校验的应用程序。具备解析用户输入的身份证号码中的地区信息、出生日期、以及身份证号码是否合法等功能。是练习Python面向对象思想、tkinter GUI模块的优质练手项目。项目演示项目整体效果 以上,如果我们输入一个正确的身份证号码,系统可以正常解析;但是篡改其中一位的话,校验结果直接显示无效;如果少输入一位的话,系统会提示“请输入18位”。二、认识身份证号码身份证号码的构成如下:身份证号码的构成 (1)地区码:身份证前...

阅读全文>>

0

python安装pip出现错误ModuleNotFoundError: No module named 'pip'

在使用python的时候,经常使用到pip这个工具,可以很方便的线上安装依赖库,当然pip还有很多参数都可以帮我们去查询一些库信息。在安装python的时候,下载带有pip的安装包就可以直接安装pip啦,当然没有带pip的,也可以通过下载安装包,手动安装。手动安装还是要会的。 今天尝试了一下安装pip: python get-pip.py 运行上面命令行,显示安装成功: Collecting pip Using cached pip-20.2.4-py2.py3-none-any.whl (1.5 MB) Collecti...

阅读全文>>

0

WebSocket 协议初探

因项目使用WebSocket作为主要的请求方式,知其然也要知其所以然,会用也需要知道它的基本原理,所以写此文章分享下自己的浅见,文章主要包括以下内容:WebSocket是什么WebSocket和Socket区别建立连接数据帧格式发送数据聊天Demo代码: github.com/madaoCN/Web… 包含tornado写的 Server 和 Client 脚本 和 简单ws使用实例的iOS代码WebSocket是什么WebSocket是一种在单个 TCP 连接上进行 全双工 通信的协议,WebSocket使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在WebS...

阅读全文>>

0

Python或将成为第一大编程语言,中国开源涨势最猛

现在,是时候谈一谈 2020 年及以后的软件工程状况了。本文以 GitHub Octoverse 数据为基础,加上我作为一个拥有十年经验的软件工程师的经验和观察。我还将讨论下面列出的话题。软件工程在过去 20 年来实现了爆炸式的增长,而且这种势头似乎还在保持。据《财富》(Fortune)数据显示,2019 年全球前 15 家科技公司的总收入达到了创纪录的 1.67 万亿美元,比 2018 年增长了 2%。今天的软件公司比以往任何时候都要多。此外,现有的非软件公司在产品中引入了更多的软件组件,从汽车到洗衣机,无所不包。未来是软件的天下,但并非所有的软件都是平等的。确定软件最有前途和发展最快的领域...

阅读全文>>

0

PyCharm 2020.1 稳定版发布

PyCharm 2020.1 稳定版已发布,这也是 PyCharm 今年发布的首个主要版本。新版的亮点包括更方便地 rebase 分支、更智能地 debug,以及使用专为编码设计的字体 Mono。下载地址:https://jetbrains.com/pycharm/download可交互的 rebase 操作历史提交记录会逐渐变得混乱,这就是为什么需要 rebase 分支的原因。新版 PyCharm 提供了前所未有方便的可视化操作方式。更智能地 debugPyCharm 调试器现在能让开发者十分清晰地观察到复杂语句中发生的事情。当它工作时,调试器会准确地询问开发者希望进一步调试语句的哪部分。J...

阅读全文>>

0

Python3.9又更新了:dict内置新功能,正式版十月见面

Python3.8 的热乎劲还没过去,Python 就又双叒叕要更新了。近日,3.9 版本的第四个 alpha 版已经开源。从文档中,我们可以看到官方透露的对 dict、math 等组件增加的新特性,以及下一步的开发进展。自公开了 3.8 版本后,Python 的迭代依然在继续。目前是 Python3.9,这是一个正在开发的 Python 版本。其最新的 alpha 4.0 版本——3.9.0a4 已经公开。公开这一版本的原因是希望帮助开发者尽快测试新特性、修复 bug 并测试开源流程。在这一阶段,新特性还在增加,直到迭代到 beta 版本,甚至是候选版本。官方表示,当前版本不推荐应用到生产环...

阅读全文>>