【Design Patterns】创建型模式 📅 Oct 9, 2021 · ☕ 9 min read 工厂模式(Factory Method) 意图:定义一个创建对象的接口,让其子类自己决定实例化哪一个工厂类,工厂模式使其创建过程延迟到子类进行。
【Design Patterns】设计模式 📅 Sep 27, 2021 · ☕ 3 min read 总的来说就是,越来越觉得自己开发有问题。写东西,我能写,能实现,但是代码越看越丑,尤其是代码量高的一些大项目,写到后面就会觉得语法和结构上各
一种关于Valine评论实现即时邮件提醒的解决方案 📅 Mar 31, 2020 · ☕ 5 min read 0x00 提出背景 自从博客迁移到Hexo上后,这个评论系统可让我没少花功夫折腾。可以了解到现在主流的是使用Valine插件,配合LeanCloud的
Cython混合编程(2) 📅 Oct 12, 2019 · ☕ 5 min read 0x00 Cython静态类型再提速 在上一节中,已经介绍了将Python代码通过Cython编译为低级的机器码作为库来提速的方法,但实际上,上一节的
Cython混合编程(1) 📅 Sep 25, 2019 · ☕ 3 min read 0x00 为什么需要Cython 如果已经阅读过我之前写的 多线程、协程与高并发 博文,或者对CPython解释器、GIL锁有一定了解,那肯定知道Pyth
多线程、协程与高并发(3) 📅 Mar 17, 2019 · ☕ 10 min read 0x20 协程 之前我们讲了,Python中存在GIL(全局解释锁),正因为这个设定(bug),导致多线程一直不是很好用,相形之下,对于高并发的实现,
多线程、协程与高并发(2) 📅 Mar 16, 2019 · ☕ 5 min read 0x10 线程池与并发未来 不论是进程还是线程,均不能无限的开启,因此当我们用多线程解决并发问题时,我们常常使用构建线程池的方式来解决。在Python
多线程、协程与高并发(1) 📅 Mar 16, 2019 · ☕ 13 min read 0x01 多线程 多线程是程序在同样的上下文中同时运行多条线程的能力。这些线程共享同一个进程的资源,可以在并发模式(单核处理器)或并行模式(多核处理器
Scrapy从入门到弃坑(番外):数据可视化与Item监控 📅 Mar 9, 2019 · ☕ 2 min read 通过之前的学习,我们已经可以通过各种姿势获取到数据了,但是我们并不能很直观的观察这些数据,这就需要我们通过一些方法实现数据可视化,以达到清晰
Scrapy从入门到弃坑(5):分布式爬虫实现 📅 Feb 7, 2019 · ☕ 6 min read 0x00 需求分析 虽然基于Scrapy框架,我们可以轻易实现异步的、高并发的爬虫,但是,无论如何高并发,计算机的带宽永远是恒定的,协程设计的再巧妙也
Scrapy从入门到弃坑(4):Scrapy对接Selenium 📅 Feb 2, 2019 · ☕ 7 min read scrapy是通过直接模拟HTTP请求的方式进行页面抓取,这种方式与Requests库类似,是无法抓取JavaScript动态渲染页面的,在
ubuntu升级Python及pip 📅 Jan 30, 2019 · ☕ 4 min read 近日,笔者因为需要用到aiohttp异步处理库,而需要对服务器的Python版本做一个升级。本以为是很简单的一个事情,没想到这个升级还真不是
Scrapy从入门到弃坑(3):CrawlSpider与ItemLoader 📅 Jan 29, 2019 · ☕ 5 min read 想必各位一定知道scrapy集成了几个可用模板,其中的CrawlSpider模板是Scrapy提供的一个通用Spider模板,可以方便的通过