AMS Sourcing – Webscraper

AMS Sourcing is een strategische inkoopalliantie. Ze initieert, beheert en coördineert de gezamenlijke inkopen voor 10 Europese top voedingsretailers. Door de expertise en het volume van de retailers te bundelen en te benutten om huismerkproducten op internationale schaal in te kopen, kan AMS de best mogelijke kwaliteit tegen concurrerende prijzen leveren. Hierdoor kunnen de retailers klanten meer waar voor hun geld bieden, wat het bedrijfsresultaat verbetert en een duidelijk concurrentievoordeel geeft in de snel veranderende retailmarkt van vandaag.

Snel veranderde retailmarkt.

PROBLEEM

Als organisatie wil je op de hoogte zijn van wat er bij jou in de markt speelt. Zo ook onze opdrachtgever AMS. Dagelijks volgen zij de meest recente ontwikkelingen voor supermarkten per grondstof/goed. De informatie over bijvoorbeeld papier, vis, plastic of olie wordt dagelijks verzameld en geanalyseerd. Het handmatig doorzoeken van verschillende websites naar nieuwe relevante informatie is daarmee ook een tijdrovend proces.

Doel: dit proces automatiseren en ervoor zorgen dat het artikel naar de juiste business analist gaat die verantwoordelijk is voor een categorie. Daarnaast wil AMS betrokken zijn bij de ontwikkeling van het automatiseringsproces zodat collega’s er vervolgens zelf mee uit de voeten kunnen.

Webscraper AMS

RESULTAAT

Voor AMS hebben we een webscraper gebouwd. De webscraper doorzoekt velen websites naar relevante nieuwsartikelen voor verschillende grondstoffen/goederen. De nieuwe relevante artikelen worden dagelijks naar de juiste stakeholder gestuurd in een nieuwsbrief format.

De webscraper wordt automatisch geüpdate en getest wanneer er nieuwe code wordt geschreven of wordt aangepast door middel van CICD pipeline. Hierdoor waarborgen we de continuïteit en voorkom je ‘fouten’.

Gedurende de ontwikkeling van het project hebben wij de collega’s van AMS intensief betrokken en getrained. Hierdoor kunnen ze zelf de webscraper onderhouden en doorontwikkelen.

AANPAK

Dit project bevat twee aspecten:

  • Bouwen van de webscraper
  • Training Python

Bouwen van webscraper
De webscraper is gebouwd in Python. Veel van de te scrapen websites steken vergelijkbaar in elkaar, de benodigde teksten staan bijvoorbeeld vaak op 1 pagina, en de HTML code van de websites vertoont overeenkomsten. Dit betekent dat er code hergebruikt kan  worden. Om deze reden zijn eerst enkele helper functies gemaakt. Helper functies zijn de standaard taken die de webscraper omvat. Deze helper functies kunnen door de business analisten van AMS gebruikt worden als ze bijvoorbeeld een nieuwe grondstof willen toevoegen. Er hoeft dan niet van scratch een gehele nieuwe webscraper te worden gebouwd.

In verschillende sprints zijn er steeds meer soorten/typen websites toegevoegd, denk aan een website met een inlogportal, zoals een online krant waar je moet inloggen om de artikelen te kunnen lezen.

Training Python
Gedurende het project zijn er verschillende Python trainingsessies gehouden om de collega’s van AMS te trainen hoe zij de webscraper moeten onderhouden en kunnen doorontwikkelen.

Gerelateerd

De overboekcalculator

| Data for Good, Leisure | No Comments
Of we klaar zijn voor versoepelingen of niet, één ding is zeker: met het lekkere weer op komst zijn de…

Gerelateerd

Financial services

| Data for Good | No Comments
In today’s society every day enormous amounts of (big) data are generated and stored and these data can contain a…