export async function scrape()

in tool.ts [518:536]


export async function scrape(url: string, regex: RegExp, handlers?: ifm.IRequestHandler[]): Promise<string[]> {
    handlers = handlers || null;
    let http: httpm.HttpClient = new httpm.HttpClient(userAgent, handlers, requestOptions);
    let output: string = await (await http.get(url)).readBody();

    let matches = output.match(regex);

    let seen: any = {};
    let versions: string[] = [];
    for (let i = 0; i < matches.length; i++) {
        let ver: string = semver.clean(matches[i]);
        if (!seen.hasOwnProperty(ver)) {
            seen[ver] = true;
            versions.push(ver);
        }
    }

    return versions;
}