推荐两个 Python 框架

2022-11-03 14:27:55 +08:00
 rusteer

爬虫框架好多啊,哪两个用的最多?

1941 次点击
所在节点    问与答
10 条回复
lambdaq
2022-11-03 14:32:11 +08:00
urllib + print
streamrx
2022-11-03 17:29:00 +08:00
写爬虫 用不用框架根本不重要
SenLief
2022-11-03 17:58:05 +08:00
多大的爬虫?爬虫越大怕是越刑啊。
findex
2022-11-03 21:36:36 +08:00
自己写吧……
核心:异步+多线程+log (断点续爬)
框架都是浮云,因为数据很可能不规范,还是需要自己解析
zzm88104
2022-11-03 21:47:16 +08:00
pyppeteer
Hider5
2022-11-03 22:15:19 +08:00
scrapy ,aiohttp ,requests
zictos
2022-11-03 23:16:57 +08:00
看需求吧,简单的需求我是情愿自己写,用别人的框架还要去花时间学习或者熟悉,python 语法本来就简单,用原生代码和一些常见的简单库能说写就写,没有任何顾虑,除非真的不用框架就很复杂的情况,那到时再说。而且某些框架往往用得少,反倒对自己以后写各种 python 的帮助不大,多写原生和常用库,以后更能灵活运用。
另外一点相关的题外话,比如市面上很多提供 api 的公司都会提供 sdk ,没特殊情况我也不想用,我情愿自己用 requests 发送请求,总觉得每次下载个 sdk 反倒更复杂了,明明一个简单的 http 请求就能解决。
我现在写加密货币的量化交易,也没用什么特别的框架。自己需要什么功能就写什么,大部分需求和指标计算都有简单的库能很简单地实现。交易所的 api 也是直接自己用 requests 发送请求,没用 ccxt 库。
ClericPy
2022-11-03 23:41:37 +08:00
不说需求直接硬问么? Scrapy 用的挺多的也挺成熟的, 别的框架基本不去碰了, 技术债这东西用开源的越复杂越麻烦

题外话:

框架这东西... 小公司用用也就算了, 大公司不如自研中间件随时可以用各种语言语言替代或者各种重构解决问题, 否则被绑架起来升级或者维护麻烦死, 已经遇到两个公司因为 python2 的 Scrapy 导致尾大不掉了

aiohttp 的性能我是真没见比它好的, 但是它的 bug 以及升级不向后兼容等问题也真的弄的很烦. httpx 用了几天感觉还行, 平时用并发性能被前者超了也就三倍左右感觉还有优化空间.
warcraft1236
2022-11-04 13:48:36 +08:00
@ClericPy aiohttp 性能一般,locust 自己搞了个 http client 库 geventhttpclient 性能比他好。但说实话我平时用还是选 aio
rusteer
2022-11-08 16:56:18 +08:00
评论中有个大佬说的好,不用太复杂的,我用了一个 urllib3+bs4 就搞定了,V 友还是牛逼的。。。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/892367

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX