美文网首页
批量爬虫工具(一)

批量爬虫工具(一)

作者: F1234N | 来源:发表于2023-03-13 17:02 被阅读0次

    一、前言

    爬虫就是一段能够模拟浏览器行为,请求获取网络数据的代码。通过对抓取的数据进行处理,从而挖掘出有价值的信息。

    二、目的

    为了提高爬虫的稳定性和(爬取、开发)效率且能够比较方便可视化和提高业务代码灵活性。我们先看看效果图吧:

    2.gif

    这里数据存放为xml文件:

    image.png image.png

    网络上的教程基本都是教如何爬取数据,但对于如何提高开发效率和爬虫的稳定性的资料很少,现有的第三方框架:Scrapy、Crawley很强大,却还是不够简便和方便理解,而且没有可视化界面,所以作为程序员,就诞生了这个批量爬虫工具,让开发效率飞一般起来。

    (Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架。 可以应用在包括数据挖掘,信息处理或存储历史数...
    Crawley:高速爬取对应网站的内容,支持关系和非关系数据库,数据可以导出为JSON、XML等。
    Portia:是一个开源可视化爬虫工具,可让使用者在不需要任何编程知识的情况下爬取网站!)

    三、爬虫框架分析。

    该爬虫框架使用MFC框架vc++编写,而爬虫代码业务处理等交给python,涉及vc++和python交互

    经过一段时间的学习,爬虫其实都离不开几个步骤:检索、跳页、导入信息(写文件、写入数据库)。这几个功能属于业务处理,所以就把这几个功能抽象成接口给python使用,而python只需要在指定的接口中写业务代码即可。比如:我们python里,只需要实现以下几个接口即可。

      #检索
    
        def SearchByString(searchkey):
    
            return asyncioRun(SearchByStringExe(searchkey))
    
        #跳页
    
        def Gopage(pageCount):
    
            return asyncioRun(GopageExe(pageCount))
    
        #处理数据
    
        def Analyse(respContent):
    
            return asyncioRun(AnalyseExe(respContent))
    

    SearchByString负责检索第一页内容,Gopage负责跳页,Analyse负责处理数据,其他开几个线程,断点续传,错误日志,重抓失败页,线程管理统统交给批量爬虫工具,简单粗暴地就搞定了一个爬虫任务。

    是不是很nice!

    相关文章

      网友评论

          本文标题:批量爬虫工具(一)

          本文链接:https://www.haomeiwen.com/subject/phbcrdtx.html