Semalt Review - Kørsel af en skrabe script

Airflow er et planlægningsbibliotek for Python, der bruges til at konfigurere multisystem-arbejdsgange, der udføres parallelt på tværs af ethvert antal brugere. En enkelt luftstrømsledning består af SQL-, bash- og Python-operationer. Værktøjet fungerer ved at specificere afhængigheder mellem opgaver, et kritisk element, der hjælper med at bestemme de opgaver, der skal køres parallelt, og hvilke der skal udføres, når de andre funktioner er afsluttet.

Hvorfor luftstrøm?

Airflow-værktøjet er skrevet i Python, hvilket giver dig fordelen ved at føje dine operatører til den allerede indstillede brugerdefinerede funktionalitet. Dette værktøj giver dig mulighed for at skrabe data gennem transformationer fra et websted til et velstruktureret datablad. Airflow bruger Directed Acyclic Graphs (DAG) til at repræsentere en bestemt arbejdsgang. I dette tilfælde henviser en arbejdsgang til en samling af opgaver, der omfatter retningsafhængighed.

Sådan fungerer Apache Airflow

Airflow er et lagerstyringssystem, der arbejder på at definere opgaver som deres ultimative afhængighed, da koden udfører funktionerne i en tidsplan og distribuerer udførelsen af opgaver på tværs af alle arbejdsprocesser. Dette værktøj tilbyder en brugergrænseflade, der viser status for både kørende og tidligere opgaver.

Luftmængde viser diagnosticeringsinformation til brugere angående procesudførelsesprocessen og giver slutbrugeren mulighed for at styre udførelsen af opgaver manuelt. Bemærk, at en rettet acyklisk graf kun bruges til at indstille udførelseskonteksten og til at organisere opgaver. I Airflow er opgaver de afgørende elementer, der kører et skrabet script. Ved skrabning består opgaver af to varianter, der inkluderer:

  • Operatør

I nogle tilfælde fungerer opgaver som operatører, hvor de udfører operationer som specificeret af slutbrugerne. Operatører er designet til at køre skrabscript og andre funktioner, der kan udføres på Python-programmeringssprog.

  • Sensor

Opgaver udvikles også til at fungere som sensorer. I et sådant tilfælde kan udførelse af opgaver, der afhænger af hinanden, blive sat på pause, indtil et kriterium, hvor en arbejdsgang løber problemfrit, er opfyldt.

Luftstrøm bruges i forskellige felter til at køre et skrapescript. Nedenfor er en guide til, hvordan du bruger Airflow.

  • Åbn din browser og tjek din brugergrænseflade
  • Kontroller den arbejdsgang, der mislykkedes, og klik på den for at se de opgaver, der gik galt
  • Klik på "Vis log" for at kontrollere årsagen til fejl. I mange tilfælde forårsager fejl med adgangskodegodkendelse arbejdsgangsfejl
  • Gå til admin-sektionen, og klik på "Forbindelser". Rediger Postgres-forbindelsen for at hente den nye adgangskode, og klik på "Gem".
  • Besøg din browser igen, og klik på den opgave, der var mislykket. Klik på opgaven, og tryk på "Ryd", så opgaven kører med succes næste gang.

Andre Python-planlæggere at overveje

cron

Cron er et Unix-baseret operativsystem, der bruges til at køre scrap scripts med jævne mellemrum med faste intervaller, datoer og tidspunkter. Dette bibliotek bruges mest til at vedligeholde og opsætte softwaremiljøer.

Luigi

Luigi er et Python-modul, der giver dig mulighed for at håndtere visualisering og afhængighedsopløsning. Luigi bruges til at skabe komplekse rørledninger til jobindsamling.

Airflow er et planlægningsbibliotek til Python, der bruges til at håndtere afhængighedsstyringsprojekter. I luftstrøm afhænger køringsopgaver af hinanden. For at opnå konsistente resultater kan du indstille dit Airflow-script til at køre automatisk efter hver time eller to.