pyspider 是弃坑了么..有啥类似的集成式的爬虫框架推荐不 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
l0wkey
V2EX    问与答

pyspider 是弃坑了么..有啥类似的集成式的爬虫框架推荐不

  •  
  •   l0wkey 2022 年 4 月 18 日 2724 次点击
    这是一个创建于 1363 天前的主题,其中的信息可能已经有所发展或是发生改变。
    想写个小爬虫, 几年前用的 pyspider 感觉很方便(主要是集成度高,比如 webui/在线调试 /结果存储之类)。

    当然 scrapy 也可以通过各个第三方配出来,但是写点小项目太庞大和复杂了写。
    8 条回复    2022-04-19 10:47:46 +08:00
    mywaiting
        1
    mywaiting  
       2022 年 4 月 18 日
    爬虫不都是 requests 一把梭,一连串的 if else 就写完了么?
    l0wkey
        2
    l0wkey  
    OP
       2022 年 4 月 18 日 via iPhone
    @mywaiting 爬多个站,不好管理...
    mimzy
        3
    mimzy  
       2022 年 4 月 18 日
    @binux 尝试召唤
    binux
        4
    binux  
       2022 年 4 月 19 日 via Android
    因为之后我自己也没有使用场景,就没有维护了。
    Kobayashi
        5
    Kobayashi  
       2022 年 4 月 19 日 via Android
    这还用选吗,当然是 Scrapy 。爬虫不需要可视化,这是伪需求,懂 XPath 和 CSS 选择器语法就够了。
    说 requests 的可能是没写过大量爬虫,爬虫从来都不是一个 HTTP 下载+HTML 解析问题。当你做大量爬取时,你要考虑各种其他设计:
    1. 队列,生成的待爬取 URL 越来越多,需要队列存储待爬
    2. 队列是支持先入先出还是先入后出,直接对应深度优先爬取和广度优先爬取
    3. 爬取中断了如何恢复,是支持队列固化还是使用 Redis 做队列
    4. 如何针对被爬 URL 去重,同样去重指纹怎么固化
    5. 避免频率过高爬取时,钱多直接上代理池,免费先做并发控制、人工时延。或者多开几台机器搞分布式。
    6. 人工时延是针对 IP 还是 host ,要不要加随机抖动
    7. 如果不考虑 IP 被封,高并发爬取是线程池还是异步。
    8. 对于偶发的网络问题导致的 HTTP 请求失败,要不要加入自动重试。
    9. 或者更扯淡一点,为了避免发散爬取时进入对方蜜罐爬取大量无用连接,耗尽连接池。如何做深度控制。
    10. ……
    还有各种各样的问题,Scrapy 和 Scrapy 插件提供了现成的解决方案。
    l0wkey
        6
    l0wkey  
    OP
       2022 年 4 月 19 日
    @Kobayashi #5 嗯 我主要是觉得 scrapy 太重了.. 写个小爬虫的情况下,比如之前 pyspider 写个小爬虫连存储都不需要自己搞。scrapy 肯定可以实现,但是多数情况下都需要单独选择插件,集成再测试
    Kobayashi
        7
    Kobayashi  
       2022 年 4 月 19 日
    嗯…… cookiecutter 配合 Scrapy 搭个脚手架,或者反过来配合 requests/httpx/aiohttp 搭个脚手架?
    实话说,我尝试过的爬虫框架也不多,有时间你可以去尝试一些新框架。先帮你排个雷:ruia 。国人搞得自称 asyncio 版 scrapy ,读过二者源码,只能说借鉴了几个类名,框架运行逻辑完全不像,扩展程度天壤之别。
    l0wkey
        8
    l0wkey  
    OP
       2022 年 4 月 19 日
    @Kobayashi #7 嗯...这次准备还是先用 @binux 大佬的 pyspider + 老版本 Python 跑起来凑合凑合了..
    如果时间精力允许情况下,确实搭一套顺手的脚手架是合适的..
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2637 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 04:05 PVG 12:05 LAX 20:05 JFK 23:05
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86