三步搞定 Android 逆向 本文源于我近期的一次公司内部分享,通过逆向某款 APP 来介绍逆向过程。由于仅作为学习用途,APP 的相关信息会被遮盖,敬请理解。 关于逆向逆向——包括但不限于通过反编译、Hook 等手段,来解析一些功能的实现过程。 逆向在很多领域都有应用,比如如今爬虫技术已经遍地走,甚至不用写代码都可以爬取数据,导致前端开发的反爬意识也逐步提升。因此 JS、Android 等领域的逆向,已经成为爬虫开发者必 2019-09-01 Python #爬虫
爬虫工程师常用的 Chrome 插件 做多了爬虫都知道,写一个爬虫大部分时间不是在代码上,而是在分析网页上,所有有一套好用的工具可以极大节省劳动力,这里把平时积累的一些 Chrome 插件分享出来,均来自本人和同事推荐,并不定时更新,欢迎点赞和收藏。下面大标题指向的是谷歌应用商店,访问需要特殊方法,也可以进入本仓库的 extensions 目录中下载。 XPath Helper 相比较 Chrome 自身的 html 搜索,这款插 2019-06-02 Python #爬虫 #经验
爬虫必备:Python 执行 JS 代码 —— PyExecJS、PyV8、Js2Py 在使用爬虫中,经常会遇到网页请求数据是经过 JS 处理的,特别是模拟登录时可能有加密请求。而目前绝大部分前端 JS 代码都是经过混淆的,可读性极低,想理解代码逻辑需要花费大量时间。这时不要着急使用 Selenium 暴力解决,毕竟 Selenium 严重拖慢爬虫效率,我们可以尝试使用一些第三方库,来直接执行前端 JS 代码得到处理过后的结果。 PyExecJS这个库主要是将 JS 代码运行在本 2019-03-18 Python #爬虫 #后端
Python 简单进行简繁转换 最近项目中用到了简单的简繁转换,如果用OpenCC太重了,于是搜到了 zhconv 这个库。 zhconv 提供基于 MediaWiki 词汇表的最大正向匹配简繁转换,Python 2, 3 通用。 支持以下地区词转换: zh-tw 台灣正體 zh-hk 香港繁體 zh-sg 马新简体 zh-hans 简体 zh-hant 繁體 正好适合我不求转换质量的轻量需求,所以介绍给更多需要的 2019-01-29 Python #后端 #工具
Python 输出命令行进度条 在使用 pip 安装时,你会发现有下载进度条,我们也可以借助开源的第三方库来实现这个功能,在项目输出时增加一些可视化效果。 一个简单易用的第三方库是:progress 作者提供了动图很直观地展现了实现的所有输出。 这个库实现了两类样式,一类是有终点的进度条样式,另一类是多用于加载的转圈样式。 12345678import timefrom progress.bar import Barbar 2018-12-29 Python #后端 #工具
自学入门 Python 优质中文资源索引 所有资源基于 Python3 版本,全部中文内容,适用于 爬虫 / Web / 数据 方向,每个单元根据学习习惯从 书籍 / 文档 / 视频 中选择一类即可,建议任选一本书籍,然后配合文档类进行学习。资源遵守“宁缺毋滥”的原则,均经过网评筛选或个人亲测,不推荐各类低质量大杂烩的文章书籍,力求少走弯路。通过本文链接资源坚持学习,可真正的零基础自学入门 Pyt 2018-11-14 Python #后端 #经验
打印 Python 的一切 —— pprint & beeprint 打印,是所有程序员从小白时期就具备的神技,遇事不决打印一下,是 DEBUG 最简单且不依赖 IDE 的方式,自定义各种日志输出,也是项目成型后必备功能。但是为了优雅的打印格式,往往需要对各种对象进行特殊格式化,可遇到字典和大段字符串也不好处理。这篇文章介绍两个库模块,可以快速有效的解决所有 Python 对象的打印输出,没错,所有。 pprint这是 Python 标准库模块,全称 prett 2018-10-20 Python #后端 #工具
Python 3.7.0 正式版发布,新特性翻译 美国时间6月27日晚8点,Python 3.7.0 经过多轮测试,终于发布了正式版,增强了多处特性功能,同时 3.6 也更新到 3.6.6 稳定版本。 主要特性 PEP 539,新增 CPython 中用于线程本地存储的 C-API PEP 545,Python 官方文档翻译版本,新增日文、法文、韩文 PEP 552,优化 pyc 文件 PEP 553,新增内置函数 breakpoint() 2018-06-28 Python #杂文
2019年最新 Python 模拟登录知乎 支持验证码 知乎的登录页面已经改版多次,加强了身份验证,网络上大部分模拟登录均已失效,所以我重写了一份完整的,并实现了提交验证码 (包括中文验证码),本文我对分析过程和代码进行步骤分解,完整的代码请见末尾 Github 仓库,不过还是建议看一遍正文,因为代码早晚会失效,解析思路才是永恒。 分析 POST 请求首先打开控制台正常登录一次,可以很快找到登录的 API 接口,这个就是模拟登录 POST 的链接。 2018-03-06 Python #爬虫
如何理解“面向对象”编程思想 知乎问题:怎么理解面向对象? 以下是我的回答: 理解面向对象,首先理解要它的基础概念: 面向对象 ( Object Oriented ) 是将现实问题构建关系,然后抽象成 **类 ( class )**,给类定义属性和方法后,再将类实例化成 实例 ( instance ) ,通过访问实例的属性和调用方法来进行使用。 在不同的语言中,对象的定义范围不同。在 Python 中“类”和“类的实例”都称为 2018-03-03 Python #后端 #经验