Data skrabning

Data skrabning er en teknik, hvor et computerprogram uddrager data fra menneskeligt læsbar output fra et andet program.

Beskrivelse

Normalt er dataoverførsel mellem programmer opnås ved anvendelse af datastrukturer egnede til automatisk behandling af computere, ikke mennesker. Sådanne interchange formater og protokoller er typisk stift struktureret, veldokumenterede, let analyseres, og holde flertydighed til et minimum. Meget ofte er disse transmissioner ikke kan læses af mennesker overhovedet.

Således det centrale element, der adskiller data skrabning fra almindelig parsing er, at outputtet bliver skrabet var beregnet til visning til en slutbruger, snarere end som input til et andet program, og er derfor som regel hverken dokumenteret eller struktureret til praktisk parsing. Data, skrabning indebærer ofte ignorerer binære data, formatering skærm, redundante etiketter, overflødige kommentarer, og andre oplysninger, som enten er irrelevante eller hindrer automatiseret behandling.

Data skrabning er oftest gjort til enten interface til en arv, som ikke har nogen anden mekanisme, som er kompatibel med aktuelle hardware, eller at interface til en tredjepart, som ikke giver en mere bekvem API. I det andet tilfælde, operatøren af ​​tredjeparts-system vil ofte se skærmen skrabning som uønsket på grund af årsager såsom øget belastning systemet, tab af reklame indtægt eller tab af kontrol over indholdet oplysningerne.

Data skrabning er generelt betragtes som en ad hoc, uelegant teknik, der ofte kun bruges som en "sidste udvej", når ingen anden mekanisme for dataudveksling er til rådighed. Bortset fra den højere programmering og forarbejdning overhead, output skærme til konsum ændrer ofte struktur ofte. Mennesker kan klare dette nemt, men edb-programmer vil ofte gå ned eller give forkerte resultater.

Screen skrabning

Screen scraping normalt forbundet med programmatisk indsamling af visuelle data fra en kilde, i stedet for parsing data i web skrabning. Oprindeligt screen scraping henvist til praksis med at læse tekst-data fra en computer skærm terminalens skærm. Dette blev generelt udført ved at læse terminalens hukommelse gennem sin ekstra port, eller ved at forbinde terminalen udgangsport af et computersystem til en indgangsport på en anden. Udtrykket screen scraping er også almindeligt anvendt til at henvise til tovejs udveksling af data. Dette kunne være den simple tilfælde, hvor den kontrollerende program navigerer gennem brugergrænsefladen, eller mere komplekse scenarier, hvor den kontrollerende program indtastning af data i et interface beregnet til at blive brugt af et menneske.

Som et konkret eksempel på en klassisk skærm skraber, overveje en hypotetisk nedarvede system stammer fra 1960'erne begyndelsen af ​​edb databehandling. Computer til brugergrænseflader fra denne æra var ofte blot tekstbaserede dumme terminaler, som ikke var meget mere end virtuelle fjernskrivere. Ønsket om at interface et sådant system til mere moderne systemer er fælles. En robust løsning vil ofte kræve tingene ikke længere til rådighed, såsom kildekode, dokumentation, API'er, eller programmører med erfaring i en 50-årig edb-system. I sådanne tilfælde kan den eneste mulige løsning være at skrive en skærm skraber som "foregiver" til at være en bruger på en terminal. Skærmen skraber kan forbinde til nedarvede system via Telnet, efterligne de tastetryk, der er nødvendige for at navigere den gamle brugerflade, proces det resulterende display output, udtrække de ønskede data, og give det videre til det moderne system.

I 1980'erne, finansielle dataleverandører såsom Reuters, Telerate og Quotron viste data i 24 × 80 format beregnet til et menneske læser. Brugere af disse data, især investeringsbanker, skrev programmer til at fange og konvertere denne karakter data numeriske data for optagelse i beregningerne for handel beslutninger uden at re-keying dataene. Den fælles betegnelse for denne praksis, især i Det Forenede Kongerige, var side neddeling, da resultaterne kunne tænkes at have passeret gennem en makulator. Internt Reuters brugte udtrykket "logicized« for denne konvertering proces, der kører et sofistikeret computersystem på VAX / VMS kaldet Logicizer.

Mere moderne screen skrabe teknikker omfatter opfange de bitmap data fra skærmen og kører den igennem en OCR motor, eller i tilfælde af GUI applikationer, forespørge de grafiske kontroller ved programmatisk opnå referencer til deres underliggende programmering objekter.

Web skrabning

Websider er bygget ved hjælp tekstbaserede markup-sprog, og ofte indeholder et væld af nyttige oplysninger i tekstform. Men de fleste websider designet for humane slutbrugere og ikke for at lette automatiseret brug. På grund af dette, blev tool kits, skrabe webindhold oprettet. En web skraber er en API til at udtrække data fra et websted. Virksomheder som Amazon AWS, Google giver web skrabe værktøjer, tjenester og offentlige data tilgængelige uden omkostninger til slutbrugerne.

Nyere former for web skrabning indebærer at lytte til data-feeds fra webservere. For eksempel JSON er almindeligt anvendt som en transport oplagringsmekanisme mellem klienten og webserveren.

Rapporter minedrift

Rapport minedrift er udtræk af data fra humane læsbare computer rapporter. Konventionel dataudtræk kræver en forbindelse til en arbejdsgruppe kilde, egnet tilslutningsmuligheder standarder eller en API, og som regel komplekse forespørgsler. Ved at bruge kilden systemets standard rapporteringsmuligheder, og lede output til en spole fil i stedet for til en printer, kan statiske rapporter genereres egnet til offline analyse via rapport minedrift. Denne tilgang kan undgå intensiv CPU-forbrug i åbningstiden, kan minimere slutbrugernes licensomkostninger til ERP kunder, og kan tilbyde meget rapid prototyping og udvikling af brugerdefinerede rapporter. Hvorimod data skrabning og web skrabning indebærer interagere med dynamisk output, rapport minedrift indebærer udtrække data fra filer i et menneske læsbart format, såsom HTML, PDF, eller tekst. Disse kan let genereres fra næsten ethvert system ved at opfange data foder til en printer. Denne fremgangsmåde kan give en hurtig og enkel vej til at indhente data uden at skulle programmere en API til kilden system.

  0   0
Forrige artikel Craig Fitzgibbon

Kommentarer - 0

Ingen kommentar

Tilføj en kommentar

smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile
Tegn tilbage: 3000
captcha