pup-crawler
Version:
A simple web crawler that extracts data from websites, using Node.js and Puppeteer.
32 lines (31 loc) • 1.18 kB
TypeScript
import { Browser, LaunchOptions, Page } from 'puppeteer';
import type { IProps, CrawlOptions, CrawlOptionsCore, Target, obj } from './types.d.ts';
declare class PupCrawler {
browser: Browser | undefined;
url: string | undefined;
host: string;
states: obj;
showLog?: boolean;
constructor(props?: IProps);
open(options?: LaunchOptions): Promise<void>;
close(): Promise<void>;
setValue(key: string, value: any): void;
getValue(key: string): any;
/** 循环获取 */
loopQueue(result: obj, options: {
target: any;
}): Promise<obj>;
/** 自循环 */
recursionRun(result: obj, options: CrawlOptions): Promise<obj>;
/** 自定义dom解析器 */
domParser(win: any, values: Target['values']): obj[];
/** 页面操作 */
actionsPlug(page: Page, actions: any[]): Promise<true | undefined>;
/** 爬取内容核心 */
crawlCore(params: CrawlOptionsCore): Promise<obj>;
/** 爬取静态页面 */
crawlStaticPage(params: CrawlOptions): Promise<obj>;
/** 爬取页面属性:CrawlPageOptions */
crawlPage(params: CrawlOptions): Promise<obj>;
}
export { PupCrawler, CrawlOptions };