4.aiohttp
4.1.入门案例
4.2.html解析
4.2.1.列表页
4.2.2.详情页
4.3.爬虫小案例
4.3.1.小说网站实战
闲言碎语
4.aiohttp
代码:https://github.com/lotapp/BaseCode/tree/master/python/5.concurrent/ZCoroutine/z_spider
库只有 和 服务,并不支持 , 就可以理解为是基于 的 服务
4.1.入门案例
先来个获取页面html的demo:
输出:
4.2.html解析
推荐一款轻量级网页解析库:(一个类似jquery的python库)
4.2.1.列表页
在上面基础上简单提取:( ==> 类比JQ选择器)
输出:
4.2.2.详情页
获取一个详情页看看:
输出:
PS:Win下Py包安装出错就去这个网站下对应包https://www.lfd.uci.edu/~gohlke/pythonlibs/
4.3.爬虫小案例
4.3.1.小说网站实战
限流以及反爬虫和如何应对反爬虫机制,后面我们会继续说,这边简单举个小说离线的例子:
输出:(爬取整站就不用我说了吧: )
动态展示
闲言碎语
【推荐】Python高性能异步框架:https://github.com/LessChina/sanic
逆天点评:(只看主线,只说我的见识)
原来大家都是使用大一统的 (方便)
后来因为性能不佳,FaceBook开发了 (IO多路复用)来代替
再后来时代主流是敏捷开发,于是就有了 (简单)
后来Node和Go火了,NetCore也出山了,Python的Flask等同步框架总是被吊打
于是被逼出了 ,瞬间惊艳和吊打的所有开发语言,但是只是冒了泡就不怎么维护了
后来就是AI爆发时期,Python直接打上了AI的标签了,而Web也逐渐被打上了初创公司的标配
之后官方看不下去了,自己搞了一套异步框架 and (Node兄弟这么优秀,凭啥我们不行)
民间看不下去了来了个 替代品(C实现的程度比官方多(谁多谁高效),PS:官方用法太丑陋了3.7才给足了语法糖)
解决方案虽然各种出,但是web框架不行啊,于是又冒了个主流(语法和 很像,性能不亚于 )
现在又刚冒出(都是C实现)有超过 的趋势(PS:等过几个版本再试水,不过现在很多开发者都是 了)
最后BB一句:
用猴子补丁的确很方便,但很多内部异常就被屏蔽了,而且性能现在不是最高
为了兼容 和 ,内部还是通过生成器来实现异步的,效率相对低点
是未来的主流方向, 是目前最火的异步框架( 还在观察中)
PS: 、 是阻塞式IO,web框架一般不会直接部署(它自带的解决方案只是方便调试),一般使用 or + 来部署(tornado可以直接部署)
参考链接:
领取专属 10元无门槛券
私享最新 技术干货