@xcrap/core
Version:
Xcrap Core is the core package of the Xcrap framework for web scraping, offering tools such as HttpClient, BaseClient, Randomizer, Rotator, and support for proxies and pagination.
44 lines (43 loc) • 1.39 kB
TypeScript
import { ExtractorFunction } from "@xcrap/parser";
import { ClientInterface, ClientRequestOptions } from "../interfaces/client";
export type StaticPaginatorOptions = {
initialPage: number;
lastPage: number;
minPage?: number;
templateUrl: string;
};
export type TrackerTransformer = (value: any) => number;
export type Tracker = {
query: string;
extractor: ExtractorFunction;
transformer?: TrackerTransformer;
};
export type Trackers = {
currentPage: Tracker;
lastPage: Tracker;
};
export type StaticPaginatorCreateWithTracking = {
client: ClientInterface;
trackers: Trackers;
request: ClientRequestOptions;
templateUrl: string;
};
export declare class StaticPaginator {
initialPage: number;
lastPage: number;
currentPage: number;
templateUrl: string;
minPage: number;
constructor({ initialPage, lastPage, minPage, templateUrl, }: StaticPaginatorOptions);
static createWithTracking({ client, request, templateUrl, trackers }: StaticPaginatorCreateWithTracking): Promise<{
response: import("..").HttpResponse;
parser: import("@xcrap/parser").HtmlParser;
paginator: StaticPaginator;
}>;
static generateUrl(url: string, page: number): string;
set(page: number): string;
previous(): string;
get current(): string;
next(): string;
dump(limit?: number): string[];
}