V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
LetFoxRun
V2EX  ›  问与答

对于我这种网络爬虫,应该使用哪种模型来加快效率呢?

  •  
  •   LetFoxRun · 2014-06-03 11:09:18 +08:00 · 3165 次点击
    这是一个创建于 3828 天前的主题,其中的信息可能已经有所发展或是发生改变。
    举个例子,写一个网络爬虫有以下步骤:
    1.抓取网页(打开网页)
    2.解析网页内容
    3.下载网页里面的内容(比较费时)

    我们可以将上面三个步骤简化为2个,即 1.打开网页 2.解析网页并下载内容

    如果更效率的完成上面的操作呢?


    有好的回复,必发送感谢!
    12 条回复    2014-06-03 13:55:06 +08:00
    pathletboy
        1
    pathletboy  
       2014-06-03 11:57:27 +08:00
    打开网页解析并下载
    binux
        2
    binux  
       2014-06-03 12:15:02 +08:00   ❤️ 1
    取决于你网速,除非你连怎么占满带宽都不知道。
    shoumu
        3
    shoumu  
       2014-06-03 12:23:27 +08:00
    下载的内容是什么内容
    faceair
        4
    faceair  
       2014-06-03 12:24:53 +08:00   ❤️ 1
    多线程或者用回调
    LetFoxRun
        5
    LetFoxRun  
    OP
       2014-06-03 12:40:24 +08:00 via Android
    @binux
    其实我是想问下,基本常用的都有哪些模型,哪些方法。

    比如,多进程,多线程,异步,父子进程。

    假如需要下载的东西比较费时(需要1分钟能下载成功),但是比较小,10kb,一般情况下,这种应该使用什么模型或方法?

    求多说两句,谢谢。
    oIIo
        6
    oIIo  
       2014-06-03 12:51:18 +08:00
    为什么不搜一搜呢, 网上搜spider或者crawler,各种文章,各种源码都有,够你参考了。
    diaoleona
        7
    diaoleona  
       2014-06-03 12:53:09 +08:00
    scrapy or scrapyd
    alexapollo
        8
    alexapollo  
       2014-06-03 12:57:56 +08:00
    异步编程妥妥的
    LetFoxRun
        9
    LetFoxRun  
    OP
       2014-06-03 13:01:53 +08:00 via Android
    @oIIo
    我是以爬虫为例,实际情况可能是其他类似的情况。

    主要想知道有哪些更好的方法或模型。
    imn1
        10
    imn1  
       2014-06-03 13:13:52 +08:00
    一切取决于量~
    爬一个网页和爬一个网站做法完全不同
    binux
        11
    binux  
       2014-06-03 13:37:55 +08:00
    @LetFoxRun 只能说都可以,不如你自己都了解下
    codingpp
        12
    codingpp  
       2014-06-03 13:55:06 +08:00   ❤️ 1
    异步回调了,其他不考虑
    一次发起上万个请求
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3269 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 13:03 · PVG 21:03 · LAX 05:03 · JFK 08:03
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.