Hjem Personlig finansiering Tager DOM-tilgangen til XML-dokumenter - dummies

Tager DOM-tilgangen til XML-dokumenter - dummies

Indholdsfortegnelse:

Video: Web Scraping with Nokogirl/Kimono by Robert Krabek 2024

Video: Web Scraping with Nokogirl/Kimono by Robert Krabek 2024
Anonim

Dichotomien mellem lineær tænkning og holistisk tænkning adskiller (henholdsvis) SAX fra DOM.

SAX (Simple API for XML) behandler et XML-dokument lineært og arbejder gennem et dokument stykke fra stykke fra begyndelsen til slutningen. Men med DOM (Document Object Model), hopper du ind og kigger på hele dokumentet. Lidt senere zoomer du ind på rodelementet og fokuserer derefter nærmere på et element i rodelementet. I nogle situationer er hoppe i, hvad du skal gøre.

DOM-noder

Med DOM tænker du på et XML-dokument som flere noder . Eksempler på noder omfatter elementer, attributter, kommentarer og tegnene mellem et par start- og slutkoder. Et hele XML-dokument er i sig selv en node. Alt i alt kan et XML-dokument have 12 forskellige typer noder.

Nødder af et træ

Tilsammen danner alle DOM-noderne i et XML-dokument et træ. Tag f.eks. Dokumentet i Listing 1. Dette dokuments DOM-træ ligner træet vist i Figur 1.

Liste 1: Anchovy Lovers Club

Grundlægger, præsident, sekretær, publicitetschef

Træet har elleve noder. For at tælle dem, start med at tælle træets grene (vist bekvemt i figur 1). Herefter tæller medlemsafdelingen for fornavn = "Herbert" en anden gang. (Denne fil har to DOM noder på den. Elementet hedder Medlem er en node, og elementets attribut firstname = "Herbert" er en node.)

Figur 1: Et træ der repræsenterer dokumentet i Listing 1.

En afhandling på træer

Der er et par ting, du vil opdage ved at stirre på træet i figur 1.

  • Nogle noder er børn af andre knuder.
  • Medlemskoden er for eksempel et barn i AnchovyLoversClub-noden. Det skyldes, at i medlemskab 1 er medlemelementet nestet inde i elementet AncoverLoversClub.På samme måde er den stående knude et barn i medlemskoden. Denne familie analogi fortsætter igen og igen. Medlemsknudepunktet er forælder af stående node, og AncoverLoversClub er moderen til medlemskoden.
  • Hele dokumentet er en node.
  • Dette er et vigtigt punkt, og det er let at glemme. I liste 1 er dokumentets rodelement AnchovyLoversClub. Men i figur 1 er navnet AnchovyLoversClub ikke øverst på træet. I stedet er ordet #document øverst på træet.Et DOM-træs øverste node repræsenterer et hel XML-dokument. Fejl opstår, når programmører mener, at dokumentets rodelement starter træet.(Det gør det ikke.)
  • Kommentarer og stykker af tekst er noder.
  • I figur 1 er kommentaren en børneknude for dokumentknuden. Det skyldes, at i kommentar 1 er kommentaren en del af dokumentet. Kommentaren er ikke nestet inde i noget af dokumentets elementer.Endnu en gang spiller vi slægtsforskning. Vi siger, at #documentnoden har to børn - en kommentar node og en AnchovyLoversClub node. Disse to noder - kommentaren og AnchovyLoversClub - kaldes søskende .Også i figur 1 er teksten Grundlægger, Præsident, Sekretær, Publicity Manager en del af en node. I Liste 1 er teksten Grundlægger, Præsident, Sekretær, Publicity Manager inde i Stående elementet. Så i figur 1 er denne tekstknude et barn i den stående knude.
  • Selv negativ tekst er en del af en node.
  • I henhold til figur 1 har AnchovyLoversClub-node tre direkte barnnoter - to noder mærket #text og et andet node-mærket medlem. Det skyldes, for så vidt angår DOM, AnchovyLoversClub-noden har tre ting i den.

Vognretur og tre emner

Medlemselement

Vognretur

    Situationen er illustreret i figur 2.

Figur 2: To tekstnoder i Liste 1.
    De tre Børnenes medlemsknap - to stykker af hvide rum og et stående element - er alle søskende.Bemærk nu prikkerne og [cr] i figur 1 og 2. I trædiagrammet repræsenterer en prik et tomrum, og [cr] repræsenterer et vognretur. Med DOM begynder alle de uhyggelige hvide rum mellem AnchovyLoversClub-taggen og medlemstarttaggen en knude. Fra den vinkelbeslag, der afslutter AnchovyLoversClub start-mærket, går du til næste linje, og så har du tre tomme mellemrum inden vinkelbeslaget, der åbner medlemstartet. Alle de ting er en DOM knudepunkt.
  • Slutkoder er ikke noder.
  • Med SAX kan du tænke på at starte medlemskabet, og senere afslutte medlemselementet. I DOM tror du ikke på denne måde. I stedet besøger du medlemelementet kun en gang. Inden for dette besøg besøger du det stående element og en del tekst. DOM har ingen metode svarende til SAX endElement-metoden.
Tager DOM-tilgangen til XML-dokumenter - dummies

Valg af editor

Fuld redigeringsfunktion i Photoshop Elements 10 - dummies

Fuld redigeringsfunktion i Photoshop Elements 10 - dummies

Fuld fotoredigeringsfunktion tilbyder bundter af værktøjer, som du kan bruge at redigere dine billeder, fra korrektionsværktøjer til fastsættelse af farve og klarhed til filtre, lag og meget mere for at ændre eksisterende fotos eller skabe helt originale billeder fra bunden. Men alle disse værktøjer gør også Komplet fotoredigeringstilstand kompleks. Du kan flytte ind i ...

Generelle blandingsformer i Photoshop Elements - dummies

Generelle blandingsformer i Photoshop Elements - dummies

Elementer spænder over 25 blandingstilstande. Blend modes påvirker hvordan farver interagerer mellem lag og også hvordan farver interagerer, når du anvender maling på et lag. Ikke alene gør blandingstilstande interessante effekter, men du kan også nemt anvende, redigere eller fjerne blandingsfunktioner uden at røre dine billedpixel. De forskellige blandingstilstande ...

Geometriske formindstillinger i Photoshop Elements - dummies

Geometriske formindstillinger i Photoshop Elements - dummies

Geometriindstillinger hjælpe med at definere, hvordan dine figurer ser ud. Klik på nedpegepilen i værktøjsindstillingerne i Elements for at få adgang til de geometriske indstillinger, der beskrives i det følgende. Rektangulære og afrundede rektangel geometriske indstillinger Her er geometriske indstillinger for rektangel og afrundede rektangelformer: Ubegrænset: Giver dig mulighed for at få fri tøj til at tegne en ...

Valg af editor

Sådan bygger du tabeller i HTML5 - dummies

Sådan bygger du tabeller i HTML5 - dummies

Sommetider indeholder din webside data bedst fremlagt i et bord . Du kan bruge HTML5's komplette bordsystem til at oprette tabeller som den i dette eksempel: Den grundlæggende struktur i et bord i HTML-format er rimeligt let at forstå; Tjek koden, der oprettede tabellen i eksemplet:

Hvordan man ændrer gentagne baggrunde på CSS3-steder - dummier

Hvordan man ændrer gentagne baggrunde på CSS3-steder - dummier

Der er situationer, hvor man kun vil en enkelt kopi af et baggrundsbillede på dit CSS3-websted. Det kan være, at billedet du har brugt er noget, der ikke gentager sig godt eller er stort nok til, at du virkelig ikke vil have det gentaget. Følgende procedure viser en teknik, du kan bruge til at fortælle ...

Hvordan man opbygger en webside skabelon fra scratch-dummies

Hvordan man opbygger en webside skabelon fra scratch-dummies

Standardværktøjet på tværs af digitalt agenturer og interne afdelinger til opbygning af website grafik er Adobe Photoshop. Selvom fyrværkeri er optimeret og målrettet til at producere web-grafiske kildefiler, er det bare ikke fanget, sandsynligvis på grund af den massive genoplæringsindsats ville det medføre, at hele afdelinger gør omskifteren. At oprette et nyt ...

Valg af editor

Sådan godkendes medlemmer til din LinkedIn Group - dummier

Sådan godkendes medlemmer til din LinkedIn Group - dummier

Som flere og flere mennesker finder ud af din ny LinkedIn-gruppe, og som medlemmer begynder at deltage, kan du opleve, at nogle af de personer, der har klikket på linket for at deltage, ikke er på din forhåndsgodkendte liste. Måske er de mennesker, du ikke har forstået var på LinkedIn, eller du var ikke klar over, at de var gyldige grupper ...

Hvordan man tilføjer billeder til kroppen i din LinkedIn-profil til Visual Social Marketing - dummies

Hvordan man tilføjer billeder til kroppen i din LinkedIn-profil til Visual Social Marketing - dummies

Ud over et profilbillede giver LinkedIn brugere mulighed for at forbedre de visuelle sociale markedsføringselementer i deres profiler ved at tilføje billeder til deres profilprofil. Du kan tilføje billeder til ethvert afsnit i din LinkedIn-profil. Tilføjelse af billeder til din profil kan hjælpe dig med at fortælle din historie visuelt og ...

Sådan tilføjer du en virksomhedsside til LinkedIn - dummies

Sådan tilføjer du en virksomhedsside til LinkedIn - dummies

, Når du har opfyldt kravene til oprettelse en virksomhedsside på LinkedIn, er det tid til at komme i gang ved at tilføje selskabets side til Linkedins system. For at oprette din virksomhedsside skal du blot følge disse trin: