0.3.1 • Published 4 years ago

siphon-web v0.3.1

Weekly downloads
2
License
ISC
Repository
github
Last release
4 years ago

spider-node

简单爬虫模块, 通过配置来组装一个爬虫

RoadMap

静态站点

  • 列表项信息抓取
  • 附加字段信息抓取
  • 分页循环执行, 间隔
  • 并发

动态站点

  • 列表项信息抓取
  • 附加字段信息抓取
  • 分页循环执行, 间隔
  • 并发
  • 多种属性支持

docs

module

import si from 'siphon-web'

configs

export type SiConfig = {
    /** 页面地址 */
    target: SiTarget
    /** 页面类型 static / dynamic */
    mode?: 'static' | 'dynamic'
    /** 抓取配置 */
    options: SiOptions
}

export type SiTarget = string | string[] | TargetGenerator

export type SiOptions = {
    /** 目标dom选择器 */
    selector: string
    /** 单项数据的 key 选择器 */
    // key: FieldProps 移动到 fields中
    onEmitPageData?: (error: any, pageData: any) => void
    /** 附加字段信息 */
    fields?: {
        [field: string]: FieldProps
    }
    /** 分页相关设计 */

    pagination?: {
        /** dom选择 */
        totalPage?: FieldProps
        /** 连续翻页 */
        nextPage?: FieldProps
        formatFieldsValue?: (value: string) => number
        /** 分页地址组合 */
        composeUrlFn?: (target: string, page: number | string) => string
    }
    /** 过滤器 */
    filter?: (item: CollectRowListItem) => boolean
    /** 间隔时间 */
    interval?: number
    /** 并发数 */
    parallel?: number
    /** 重试次数 */
    retryTimes?: number
}

returns

  1. with callback
  2. no

example

// see test/si.test.ts

2019-3-16

- 增加动态站点支持
- 更新配置字段
0.3.1

4 years ago

0.3.0

4 years ago

0.2.0

5 years ago

0.1.7

5 years ago

0.1.6

5 years ago

0.1.5

5 years ago

0.1.4

5 years ago

0.1.3

5 years ago

0.1.2

5 years ago

0.1.1

5 years ago

0.1.0

5 years ago