zoukankan      html  css  js  c++  java
  • 编写一个爬虫类库——(一)想法

    有的时候,我会写一些爬虫程序来自动获取一些信息,之前一段时间用过Puppeteer来驱动Chrome获取信息,我之前也写过一系列文章来介绍它。Puppeteer是Google官方出品,本身质量非常好高,提供的功能也非常强大,本身也有一些.net的移植puppeteer-sharp。但Puppeteer本身并不是针对爬虫程序定制的,用起来存在如下不便之处:

    1. 提供的API过多,想找到需要的API比较费时间。
    2. 提供的API比较底层,要实现想要的功能往往需要多个接口组合
    3. 有的功能没有提供, 需要通过一些私有接口或改源码的方式来实现
    4. 日志,输入输出,任务调度,重试策略等都需要额外的库才能实现。

    加上我也不是经常有些蜘蛛程序的需求,只是偶尔心血来潮的时候写一下玩玩。导致每次使用都要在Puppeteer的API列表和我之前的博客文章中查一遍才能进行功能的开发。

    另外,具体开发蜘蛛程序的时候,针对站点的数据解析比较费时费力,需要提供一个方便强大的调试工具。

    基于以上原因,我变有了一个自己写一个依托于Chrome,专门针对蜘蛛程序的类库的想法,主要目标如下:

    1. 提供简单的库,每次使用的时候基本上能一目了然
    2. 提供常用的库,常见的功能拿来就能使用
    3. 提供日志,输入输出,任务调度等常见的功能库集成
    4. 提供直观好用的调试工具,方便蜘蛛程序的开发

    该工具我打算使用.net core来写,有宇宙第一IDE加持的话,开发和后期使用时非常简单的。我已经实现了一个小的原型了,虽然目前功能还不完善,但已经可以用来来实现一些简单的数据爬取的。

    由于最近的工作和家里的事情都比较多,后面的开发进度估计就要慢不少了,我后续也会写一些文章介绍开发过程中的心得的。

  • 相关阅读:
    YUI+Ant 实现JS CSS压缩
    13.QT-QMainWindow组件使用
    12.QT4.7.4-解决WIN平台和Linux平台中文乱码,QLineEdit右击菜单中文显示
    11.QT-布局管理器(Box,Grid,Form,Stacked)
    10.QT-定时器
    9.QT-标准对话框
    8.QT-对话框(模态与非模态)
    7.QT-Qt对象间的父子关系
    6.QT-简易计算器实现(详解)
    5.QT-QString类
  • 原文地址:https://www.cnblogs.com/TianFang/p/11142993.html
Copyright © 2011-2022 走看看