Python - HTMLParser

Innehållsförteckning
Vid arbete med parser i Pytonorm det rekommenderas att om vi arbetar med dokument HTML använda standard XHTML, eftersom det senare är mer strikt när det gäller att hantera öppnings- och stängningstaggar för element, med detta kan vi göra program lättare som kan tolka detta.
I Pytonorm vi har tillgängliga HTMLParser, detta bör inte förväxlas med klassen med samma modulnamn htmllib, eftersom det första är en del av standardbiblioteket, när vi får ett dokument från Städa vi kan använda HMTLParser för att kunna bläddra bland dess innehåll.
Använda HTMLParser
Använd HTMLParser, det betyder verkligen att klassificera det, så att vi kan skriva över metoderna när det passar oss och därmed kunna uppfylla våra krav, låt oss se nedan en lista över de viktigaste metoderna som vi får när vi använder HTMLParser.
  • handle_starttag (tagg, attrs): När en starttagg hittas är attrs en sekvens av par (namn, värde).
  • handle_startendtag (tagg, attrs): Används för tomma etiketter. Som standard hanterar den uppstart och avstängning separat.
  • handle_endtag (tagg): Används när en stängande tagg hittas.
  • handle_data (data): Den används när vi hittar textdata.
  • handle_charref (ref): Den används när du arbetar med teckenreferenser i formuläret & # ref;.
  • handle_entityref (namn): Vi använder det när vi har referenser till enheter i formuläret & name;.
  • handle_comment (data): Det kallas bara när det finns kommenterat innehåll.
  • handle_decl (decl): Det används för deklarationer av formuläret.
  • handle_pi (data): Den används för att bearbeta instruktioner.
När vi har sett de viktigaste metoderna för HTMLParserDärefter kommer vi att se en bild med ett kodexempel och sedan kommer vi att förklara vad den består av:

FÖRSTORA

Det första vi märker är det för detta Skrapning av skärmen vi kommer inte att använda StädaDetta beror på att HTML -koden som vi ska inspektera inte är dåligt utformad, då ser vi att det första vi deklarerar är några booleska variabler med vilka vi kommer att styra om vi är inne i ett element H4 eller inom ett länkelement eller en länk.
Vi har något särskilt med metoden handle_dataEftersom vi befinner oss i en verklig miljö måste vi förbereda oss för de mest komplexa scenarierna och med detta menar vi att eftersom det är nästan säkert att vi inte kommer att få nödvändig information vid det första samtalet, förbereder vi denna metod för att kunna få den i delar, när vi får allt vi gör är att gå med i data.
Handlingen i vårt program börjar när vi kallar metoden utfodra () till vilken vi skickar texten som är innehållet på webbsidan som vi får med metoden urlopen () och när allt detta har bearbetats fortsätter vi att kalla metoden close ().
Slutligen med detta uppnådde vi ett program av Skrapning av skärmen mer läsbart än att använda reguljära uttryck och lite mer robust i aspekten att vi inte begränsar oss till fasta strukturer, med detta kan vi få vår information korrekt.
Med detta avslutar vi vår HTMLParser -handledning, som vi kan se finns det många sätt att komma till dessa lösningar för att få information från en webbsida.Gillade du och hjälpte denna handledning?Du kan belöna författaren genom att trycka på den här knappen för att ge honom en positiv poäng
wave wave wave wave wave