苔痕絮语
未读时光荏苒,又值中秋佳节。因为中秋节是我国重要的传统节日,又是非常古老的节日。
所以它包括许多民俗文化活动。例如:祭祀月亮以怀念嫦娥, 合家团聚吃月饼,赏月等。
我的故乡——潮汕还是能很好传承古代的文化。
这得益于两方面:一方面,潮汕人的祖先是北方的大家族,他们为了躲避常年的战乱而来这里栖息;另一方面,潮汕地区的地理位置三面环山,南面朝海,交通不发达。
韩愈被贬潮州,曾总结过:“潮之州,大海在其南,群山拥其北”。
因此,我们会在这中秋月圆之夜,吃月饼,赏月等,当然还有重要的节日:听老一辈的讲古。
我母亲年轻时喜欢读书,加上平时也喜欢听电台的文学节目。
所以我母亲经常是主讲人。她会给我们讲成语典故、唐宋时期的民间故事、明朝的史学等。
在其中,最让我难忘的还是红楼梦的为人处事之道。
因为这两句诗世事洞明皆学问,人情练达即文章。教会我很多。
现在我已经毕业工作,深深体会到会做人做事的重要性。
这真的能事半功倍。
所以,我到现在还是会去阅读这方面的书籍。在这里,我也分享几本好书。
1.《唐浩明评点曾国藩家书(上下册)》曾国藩是一个资质平平的人,然后通过自我意志的“刻意训练”,成就阔大的事业。
...
Python爬虫入门
未读因为 Python 语法简介以及强大的第三方库,所以我们使用它来制作网络爬虫程序。
网络爬虫的用途是进行数据采集,也就是将互联网中的数据采集过来。
在爬取某些网站时,我们经常会设置代理 IP 来避免爬虫程序被封。
我们获取代理 IP 地址方式通常提取国内的知名 IP 代理商(如西刺代理,快代理,无忧代理等)的免费代理。
这些代理商一般都会提供透明代理,匿名代理,高匿代理。
那么这几种代理的区别是什么?我们该如何选择呢?
本文的主要内容是讲解各种代理 IP 背后的原理。
1.代理类型代理类型一共能分为四种。除了前面提到的透明代理,匿名代理,高匿代理,还有混淆代理。
从安全程度来说,这四种代理类型的排序是高匿 > 混淆 > 匿名 > 透明。
2.代理原理代理类型主要取决于代理服务器端的配置。不同配置会形成不同的代理类型。
在配置中,这三个变量 REMOTE_ADDR,HTTP_VIA,HTTP_X_FORWARDED_FOR 是决定性因素。
2-1.REMOTE_ADDRREMOTE_ADDR 表示客户端的 IP,但是它的值不是由客户端提供的,而是服务器根据客户端的 I ...
Python编程
未读步入 9 月,徐徐的秋风给酷热的天气带来丝丝凉意。同时,也吹来一股招聘高潮。
俗话说“金九银十”,每年的 9、10 月都是招聘高潮。有些小伙伴会参加秋招,有些小伙伴会选择跳槽。
猴哥特意给大家送上一份 Python 面试的资料,资料都来源于 github。
1.interview_python该仓库提供的面试题目还是挺全面的,涉及到 Python 语言特性、操作系统、数据库、网络协议、场景面试算法题目。
同时,该仓库收集的面试题目也是很有深度。
举个栗子,在 Python 语言特性中,提到 Python 的闭包、迭代器和生成器、垃圾回收机制、面向切面编程 AOP 和装饰器等高级用法。
如果有小伙伴的算法知识比较薄弱,可以通过做题方式来理解。
Github 仓库地址
2.Algorithm_Interview_Notes-Chinese近两年来,机器学习算是 IT 行业的热点。有热点就有人才需求。
如果有小伙伴要面试机器学习的岗位。
可以关注下这个仓库。这个仓库主要收集算法、NLP、深度学习、机器学习面试笔记。
Github 仓库地址
3.system-design-prim ...
Python爬虫入门
未读因为 Python 语法简介以及强大的第三方库,所以我们使用它来制作网络爬虫程序。
网络爬虫的用途是进行数据采集,也就是将互联网中的数据采集过来。
网络爬虫的难点其实并不在于爬虫本身。
而是网站方为了避免数据被爬取,增加了各种各样的反爬虫措施。
如果想要继续从网站爬取数据就必须绕过这些措施。
因此,网络爬虫的难点在于反爬的攻克和处理。那么本文主要介绍一些网站的反爬虫措施。
1.妹子图这个网站的反爬虫机制比较简单。
当我们使用网络请求库下载图片时,该网站会对检查每个 HTTP 请求的 headers 头部中 Referer 字段。
它判断该字段是否为空,如果字段为空,那么不会返回正常显示的图片,而是返回一张带有“图片来自妹子网,请勿盗链”字样的图片。
遇到这种机制,突破也是比较简单。对每个 HTTP 请求,将页面的 url 地址填充到 Referer 字段中。
2.豆瓣几乎所有的爬虫新手都会爬取豆瓣练练手。但是豆瓣还是保持开放的态度,反爬虫机制做得还是很人性化。
它的反爬虫机制大概如下:
1、在没有携带 cookie 的情况下,如果某个 IP 短时间高并发请求网站,该 IP 会立马被 ...
苔痕絮语
未读说的七夕节,我们都会不由自主地想起牛郎织女的传说。
这是一个美丽且千古流传的爱情故事。它也是我们四大民间爱情传说之一。
传说是牛郎和织女之间情深意重,后来被王母娘娘强行拆散。
所以牛郎和织女只等到每年农历七月初七,走上由成千上万的喜鹊组成的桥才得以相会。
但不知从哪时起,七夕被人们普遍认为是情人节。但在中国历史上是没有这回事。
中国的传统情人节是元宵节(也称为上元节)。
在古代,平常女子特别是大家闺秀或小家碧玉,都是”三步不出闺门”。
只有到了元宵节,才能走出家门,才有机会和男生幽会谈情。
而七夕节又称乞巧节,即女子绣针线活的节日。目的是向织女乞求智慧和巧艺。
另外,古代很多文人都是在七夕抒发哀怨之情。
例如李清照的《行香子·草际鸣蛩》中写得:
星桥鹊驾,经年才见,想离情、别恨难穷。牵牛织女,莫是离中。甚霎儿晴,霎儿雨,霎儿风。
又如白居易的《七夕·烟霄微月澹长空》:
烟霄微月澹长空银汉秋期万古同。几许欢情与离恨,年年并在此宵中。
我们中国人向来很注重仪式感。既然七夕节是情人节这一说法已经深入人心。
那我们也随着大流过,不然会显得跟别人格格不入。
那么重点来了,七夕如何过呢? ...
Python编程
未读新时代,人们有人信新的追求,自然而然会有新发明的诞生。
去年,在“一带一路”国际合作高峰论坛举行期间,20 国青年投票选出中国的“新四大发明”:高铁、扫码支付、共享单车和网购。
其中扫码支付指手机通过扫描二维码跳转到支付页面,再进行付款。
这种新的支付方式,造就二维码满天飞的现象。
那么让我们来扒一扒如何使用 Python 来生成二维码图片。
1.二维码二维码(2-dimensional bar code),是用某种特定的几何图形按一定规律在平面(二维方向上)分布的黑白相间的图形记录数据符号信息的。
它能将数字、英文字母、汉字、日文字母、特殊符号(如空格,%,/ 等)、二进制等信息记录到一个正方形的图片中。
因此,在转换的过程中,离不开编码压缩方式。
在许多种类的二维条码中,常用的码制有:Data Matrix,Maxi Code,Aztec,QR Code,Vericode,PDF417,Ultracode,Code 49,Code 16K等。
二维码在现实生活中的应用越来与普遍,归于功于 QR code 码制的流行。
我们常说的二维码就是它。所以,二维码又被称为 QR code ...
最近产品经理和程序员打架的事件闹得满城风雨。
网传事情大概是这样: 一个产品经理给研发提出一个产品需求,要求 app 的主题颜色可以随着用户手机壳颜色改变而变化。
然后,两人直接干架。
出现这样的新闻,我们不能以看热闹的眼光来看待,应该积极思考背后的原由。
众所周知,产品经理和程序员的矛盾一直很存在。
既然矛盾一直存在,那我们程序员应如何优雅跟产品经理沟通?
沟通的内容往往离不开这些问题:这个需求是否要做?如果做,有什么意义?如果不做,有什么损失?
显然,我们要想一一回答这些问题,不能以技术的思维来回答。
要懂一些产品知识,从产品的角度切入来解答问题。
另外,产品经理有些时候提出这样的需求。
竞争对手的产品最近新增某些功能或者接口,但自家产品没有,需要补齐。
产品经理一定是将自己产品和竞品做对比之后才提出来的。
如果这部分工作由我们来做,我们要如何做对比?从哪些方面做对比呢?针对竞品分析,我自己说下自己的心得。
1.为什么要做竞品分析?除了前面讲到的几点原因,还有一个重要原因。如果我们做了一个竞品分析报告,然后递交给自己团队的 Leader,甚至是 CTO 或者老板。
可能会在一定 ...
Python编程
未读一个备受关注、很多人都在使用的软件,软件开发团队会定期发布新版本。
其主要目的是修复之前一些 Bug 以及新增一些新特性。
Django 作为主流的 Python Web 开发框架,当然也不例外。
在几天前,即 8 月 1 号,Django 官方团队发布 Django 2.1 版本。
新版本发布,我们可以不用急于更新替换,但要关注新版本的发布内容。
我看了下官方的发布公告,总结几个重要的点。
1.Python 版本支持Django 2.1 将不再支持 Python 3.4,最低要求 Python 版本是 3.5。
这也意味着 Django 2.0 是最后一个支持 Python 3.4 的版本。
2.模型新增查看权限这个功能,很多开发者都期待了很久。盼星星盼月亮,终于盼来了。
在以前的版本中,模型(Model)只有“增删改”权限。新版本增加查看(View)权限。这也意味着在 Model 的 Meta 配置选项中, default_permissions 属性默认值变为 ('add', 'change', 'delete', 'vi ...
智能手机的普及,这使得移动互联网成为另一个流量巨头。
越来越多的公司也会转而直接提供 App 来展示内容。
例如微信以及其生态(微信公众号、小程序)、抖音等。
这也说明人们对于手机的依赖性更强。
那抓取 App 的数据显得更加有意义。
本文的主要内容是讲述如何搭建手机抓包环境。
1.工具准备1)一台电脑最好是笔记本电脑,因为笔记本电脑内置了无限网卡。如果你使用的台式电脑,你需要自己购买无线网卡。可以不需要购买专业的抓包网卡, 购买那些 USB 迷你无线网卡就满足使用要求。如果你不清楚买什么网卡,可以选择小米随身 WIFI。
2)一台手机3)抓包软件常用的抓包软件有 WireShark、Fiddler、Charles、miniproxy 等。
我这里使用 Fiddler 作为实例进行讲解,他们抓包的原理基本相同。看个人喜欢选择抓包软件即可。
4)软 AP 软件现在市面上有很多结合网卡能创建出软AP(Soft-AP)软件。
常见的软件有:猎豹免费 WIFI、360 免费 WIFI、WIFI 共享精灵。
2.原理分析1)对手机 App 进行抓包,究竟抓取什么内容?手机 App 离不开跟服务 ...
计算机网络
未读为什么说 TCP 协议是可靠的?
几张图带你彻底了解 TCP 协议。
TCP 协议是 TCP/IP 协议栈中的传输层的协议,TCP协议又叫传输控制协议(Transport Control Protocal)。
众所周知,它是一个可靠协议。因为它能保证接收端完整地接收到发送端发送的数据包,即保证不丢包。
那 TCP 协议如何保证不丢包呢?
这个是本文重点讲述的内容。
1.TCP 协议的作用ISO(国际标准化组织)曾提出一个 OSI 七层模型。
将网络的协议划分为 7 个层,从低到高排序是:物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。
但是这个模型仅停留在理论阶段。
因为该模型过于庞大、复杂,以至于无法被广泛应用。
后来技术人员在 TCP/IP 等协议集问世之后,提出 TCP/IP 协议栈。该模型很贴近实际场景,所以被广泛的应用。
TCP/IP 协议栈一共分为 4 个层次。
从低到高依次排序是:数据链路层(有书籍称之为网络接口层)、网络层、传输层、应用层。
网络接口层:针对不同物理网络的连接形式的协议:以太网、FDDI 光纤 ...