0.1.0 • Published 2 years ago

@modalnetworks/rpacore v0.1.0

Weekly downloads
-
License
ISC
Repository
-
Last release
2 years ago

CoreApplication Modalnetworks

How to use this package

Creating your scrapper

#SourceScrapper.ts

import { ScrapperContract, Common } from "@modalnetworks/rpacore";
import { saveToCSV } from "@modalnetworks/rpacore/dist/common/Files";
import { stripTags } from "@modalnetworks/rpacore/dist/common/string";
import { delay } from "@modalnetworks/rpacore/dist/common/timer";
import { PageResult, SearchResult , SearchParams } from "@modalnetworks/rpacore/dist/types";
import { saveToCSV } from "@modalnetworks/rpacore/dist/common/Files";

export class SourceScrapper implements ScrapperContract {
  readonly name = "sourceOne";
  readonly url = "{your_url_source}";

  static browser?: any;

  async open() {
    SourceScrapper.browser = await Browser.initialize();
  }
  async close() {
    await SourceScrapper.browser.close();
  }

  async search(params: SearchParams): Promise<SearchResult | any> {
    return new Promise(async (resolve) => {
      const browser = SourceScrapper.browser;
      console.log(`scrapper ${this.url}`);
      const page = await browser.newPage();
      await page.goto(this.url);
      await page.type("#_3_keywords", params.query);
      await page.click("#_3_search");
   

      resolve({ items, page });
    });
  }
  toPage({ items, page }: SearchResult): Promise<PageResult> {
    return new Promise(async (resolve) => {
     
      
      resolve(...);
    });
  }
  toSaveFile({ items }: PageResult): Promise<any> {
    return new Promise(async (resolve) => {
      await saveToCSV(
        items.map((row) => {
          row.titulo = stripTags(row.titulo);
          row.ementa = String(row.ementa).replace(/\s+/gi, " ");
          row.integra = String(row.integra).replace(/\s+/gi, " ");
          return row;
        }),
        `./csv/${this.name}`
      );
      resolve(true);
    });
  }
}

0.1.0

2 years ago

0.0.15

2 years ago

0.0.14

2 years ago

0.0.13

2 years ago

0.0.12

2 years ago

0.0.11

2 years ago

0.0.10

2 years ago

0.0.9

2 years ago

0.0.8

2 years ago

1.0.8

2 years ago

1.0.7

2 years ago

1.0.6

2 years ago

1.0.5

2 years ago

1.0.4

2 years ago

1.0.3

2 years ago

1.0.2

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago