Scrapes

Scrapes definiëren gegevens die van een URL moeten worden gedownload en waar vervolgens middels een scraping methode specifieke informatie uit kan worden gedestilleerd. Scrapes vormen shortcodes die binnen Calcs kunnen worden ingezet om tot het gewenste resultaat te komen.

Definitie

Een scrape wordt gedefinieerd met de volgende definitie onderdelen:

  • name – de naam van de scrape.
  • description – een omschrijving van de scrape.
  • url – de bron-url die moet worden gedownload. Kan parameters bevatten die vanuit de shortcode worden overgenomen.
  • max_age – de maximum leeftijd (in minuten) die een download mag hebben alvorens deze opnieuw wordt gedownload.
  • scraping_method – de methode die gebruikt wordt om de data te destilleren.
  • scraping_action – de actie waarmee de gespecificeerde methode de data ophaalt, bijvoorbeeld een zoekstring of een query. Kan parameters bevatten.

Methodes

Momenteel zijn de volgende scraping methodes beschikbaar:

  • xpath – haal tekst uit de gedownloade bron-url (html of xml) middels een xpath-query.
    Indien meerdere elementen resulteren worden die met <br> gescheiden.
  • xtext – haal tekst uit de gedownloade bron-url (html of xml) op basis van de tekstwaarde van een element hoger in de hiërarchie. De syntax van scraping_action hierbij is:
        {item}[//{item}…]
    Waarbij {item} kan zijn {tagnaam} of {tagnaam:tekst} of {tagnaam@attribuut:waarde} of {tagnaam#num} en // gebruikt wordt om items binnen items te vinden.
    Voorbeeld: “table:MijnTekst//tr:RijTekst//td#4” zoekt de 4e kolom (td) binnen een rij (tr) met de tekst “RijTekst” binnen een tabel (table) die de tekst “MijnTekst” bevat.

Download info

Op basis van “url” en “max_age” worden aan de scrape-definitie na een download automatisch de volgende onderdelen toegevoegd:

  • downloadfilename – de naam van de download-file. Deze wordt aangemaakt op basis van de url.
  • downloadfileage – de leeftijd van de download-file (in seconden)
  • downloadfiletime – de datum/tijd van de download-file in leesbaar formaat (“d-m-Y H:i:s”)

Deze extra onderdelen kunnen worden opgevraagd met het info-attribuut. Let op: ze zijn alleen beschikbaar als de download-file bestaat en dus pas gevuld na de eerste download.

Voorbeelden:
[ kitco_gold info=”downloadfileage”] – 53059
[ kitco_gold info=”downloadfiletime”] – 24-04-2024 17:48:24