Skip to content

Latest commit

 

History

History

complements

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 

Scraper tools/complements

Mots-clés : gout, gout-scraper, gout-scraper-tools-complements.

Ce scraper ajoute des propriétés dans les résultats d'un autre scraper. Il est rare d'utiliser ce scraper directement dans un widget. Il peut être utilisé pour ajouter la fonctionnalité dans un autre scraper :

import chain from "https://cdn.jsdelivr.net/gh/regseb/gout@0/src/utils/scraper/chain.js";
import ComplementsScraper from "https://cdn.jsdelivr.net/gh/regseb/gout@0/src/scraper/tools/complements/complements.js";

const MyAwesomeScraper = class {
  /* ... */
};

export default chain(ComplementsScraper, MyAwesomeScraper, {
  dispatch: ({ complements, ...others }) => [{ complements }, others],
});

Options

Les options sont dans un objet YAML avec les propriétés suivantes :

Nom Type Description
complements object

Des propriétés qui seront ajoutées dans les éléments retournés. Par défaut aucune propriété n'est ajoutée.

Exemple : icon: "https://example.com/foo/bar.svg"

Scrapers

Ce scraper accepte un seul sous-scraper. Le sous-scraper doit définir une méthode extract() qui prend en paramètre un entier indiquant le nombre maximum d'éléments à retourner. La méthode doit retourner une promesse contenant un tableau d'objet. Les propriétés seront ajoutées dans chaque élément du tableau.

Exemple

Ce widget affiche les dernières vidéos de la chaine YouTube de Arte en ajoutant le logo de Arte à chaque élément. L'option complements est passée au scraper list/rss car ce scraper utilise tools/complements.

<script type="application/yaml">
  module:
    url: "https://cdn.jsdelivr.net/gh/regseb/gout@0/src/module/list/list.js"
    options:
      cron: "@hourly"
      max: 5
      color: "#e23014"
    scrapers:
      - url: "https://cdn.jsdelivr.net/gh/regseb/gout@0/src/scraper/list/rss/rss.js"
        options:
          url: "https://www.youtube.com/feeds/videos.xml?user=arte"
          complements:
            icon: "https://cdn.jsdelivr.net/gh/regseb/gout-regseb@0/src/widget/arte/arte_wc.svg"
</script>