lxml

Software screenshot:
lxml
Software informatie:
Versie: 3.4.4 Bijgewerkt
Upload datum: 12 May 15
Ontwikkelaar: infrae.com
Licentie: Gratis
Populariteit: 70

Rating: nan/5 (Total Votes: 0)

LXML combineert de snelheid van deze bibliotheken met de eenvoud van de Python.
Nu

  • lxml.html.iterlinks: compatibel met alle CPython versies 2,4-3,2

    Wat is nieuw in deze release. terug links in meta refresh-tags.

  • Nieuwe XMLParser optie collect_ids = Vals om ID hash tafel creatie uit te schakelen. Dit kan aanzienlijk sneller interpreteren van documenten met verschillende ID's die niet worden gebruikt.
  • De parser maakt gebruik van per-document hash tabellen voor XML-id's. Dit vermindert de belasting van de globale parser dict en versnelt ontleden voor documenten met verschillende ID's.
  • ElementTree.getelementpath (element) geeft een structurele ElementPath uitdrukking voor de gegeven element, dat kan worden gebruikt voor het opzoeken later.
  • xmlfile () een nieuw argument close = True aanvaardt te sluiten bestand (-achtige) objecten na het schrijven aan hen. Voordat, xmlfile () alleen sloot het bestand als het intern had geopend.
  • Laat & quot; ByteArray & quot; type voor ASCII-tekstinvoer.

Wat is nieuw in versie 3.4.2:

  • lxml.html.iterlinks keert nu links in meta refresh-tags.
  • Nieuwe XMLParser optie collect_ids = Vals om ID hash tafel creatie uit te schakelen. Dit kan aanzienlijk sneller interpreteren van documenten met verschillende ID's die niet worden gebruikt.
  • De parser maakt gebruik van per-document hash tabellen voor XML-id's. Dit vermindert de belasting van de globale parser dict en versnelt ontleden voor documenten met verschillende ID's.
  • ElementTree.getelementpath (element) geeft een structurele ElementPath uitdrukking voor de gegeven element, dat kan worden gebruikt voor het opzoeken later.
  • xmlfile () een nieuw argument close = True aanvaardt te sluiten bestand (-achtige) objecten na het schrijven aan hen. Voordat, xmlfile () alleen sloot het bestand als het intern had geopend.
  • Laat & quot; ByteArray & quot; type voor ASCII-tekstinvoer.

Wat is nieuw in versie 3.3.2:

  • De eigenschappen resolvers en versie, evenals de methoden set_element_class_lookup () en makeelement (), werden verloren iterparse objecten.
  • Gevallen van XMLSCHEMA, Schematron en RelaxNG niet hun lokale error_log wissen voordat u een validatie.
  • lxml.doctestcompare gemengd up & quot; verwacht & quot; en & quot; werkelijke & quot; in attribuutwaarden.

Wat is nieuw in versie 3.3.1:

  • Bugs vastgesteld:
  • HTML-documenten ontleed met parser.feed () geen elementen tijdens tag iteratie te vinden.
  • Bouwen in pypy mislukt vanwege ontbrekende ondersteuning voor PyUnicode_Compare () en PyByteArray _ * () in pypy C-API.
  • Compilatie in MSVC mislukt vanwege ontbrekende & quot; stdint.h & quot; standaard header-bestand.
  • iterparse () niet te ontleden BOM voorafgegaan bestanden.

Wat is nieuw in versie 3.3.0:

  • Bugs vastgesteld:
  • De heuristische dat bestand paden onderscheidt van URL's werd aangescherpt tot minder valse negatieven produceren.

Wat is nieuw in versie 3.2.3:

  • Vast ondersteuning voor Python 2.4, die werd verloren in 3.2 .2.

Wat is nieuw in versie 3.2.1:

  • De methoden apply_templates () en process_children () van XSLT extensie elementen hebben opgedaan twee nieuwe boolean opties elements_only en remove_blank_text dat gooi ofwel alle strings of witruimte alleen strings uit de lijst met resultaten.

Wat is nieuw in versie 3.2.0:

  • Toonaangevende witruimte kan het gedrag van de string parsing veranderen functies in lxml.html.
  • De string parsing functies in lxml.html zijn robuuster in het gezicht van ongewone HTML-content, zoals framesets of ontbrekende body-tags.
  • I / O-fouten terwijl het proberen om toegang tot bestanden met paden die niet-ASCII-tekens bevatten kon UnicodeDecodeError te verhogen in plaats van de juiste rapportage van de IOError.
  • Het ontleden van in-memory strings met een handicap toegang tot het netwerk in de standaard parser en maakte de daaropvolgende pogingen om ontleden van een URL mislukken.

Wat is nieuw in versie 3.1.2:

  • Passing attributen door de namespace-API niet bewust van de sax brug (dwz de handler.startElement () methode) mislukt met een TypeError.
  • Vast rangschikking fout in XSLT uitgang bij het omzetten van het resultaat boom naar een Unicode-string.

Wat is nieuw in versie 3.0.2:

  • Fixed crash tijdens interpreter afsluiten door over te schakelen naar Cython 0,17 0,3 voor de bouw. ​​

Wat is nieuw in versie 3.0:

  • C14N maakt het specificeren van de inclusieve voorvoegsels te worden bevorderd naar top- level tijdens exclusieve serialisatie.
  • De aanvankelijke steun voor de bouw in pypy (via cpyext).
  • DTD objecten opgedaan een API die leestoegang mogelijk maakt om hun verklaringen.
  • xpathgrep.py opgedaan ondersteuning voor het ontleden lijn per lijn (bijvoorbeeld van grep output) en rondom de output met een nieuwe root tag.
  • E-fabriek in lxml.builder aanvaardt subtypes van bekende types data (zoals touwtje subtypes) bij de bouw van elementen om hen heen.
  • Tree iteratie en iterparse () met een selectieve tag argument ondersteunt passeren van een set van tags. Tree nodes zal worden geretourneerd door de iterators indien zij een van de labels aan te passen.

Wat is nieuw in versie 2.3.5:

  • Crash bij het samenvoegen van de tekst knooppunten in element.remove ( ).
  • Crash in sax / target parser bij het rapporteren leeg doctype.

Wat is nieuw in versie 2.3.4:

  • Crash bij het bouwen van een nsmap (Element eigendom) met lege namespace URI's.
  • Crash vanwege race condition wanneer er fouten (of gebruiker berichten) optreden tijdens schroefdraad XSLT verwerking.
  • XSLT stylesheet compilatie compilatie fouten kunnen negeren.

Wat is nieuw in versie 2.3.3:

  • Eigenschappen toegevoegd:
  • lxml.html.tostring () kreeg nieuwe rangschikking opties with_tail en doctype.
  • Bugs vastgesteld:
  • Fixed a crash bij het gebruik iterparse () voor HTML parsing en het aanvragen van start evenementen.
  • Vast parsing van meer selectors in cssselect. Whitespace voor pseudo-elementen en pseudo-classes is belangrijk omdat het een afstammeling combinator. & Quot; E: pseudo & quot; moet hetzelfde ontleden als & quot; E *: pseudo & quot ;, niet & quot; E:. pseudo & quot;
  • lxml.html.diff niet langer werpt een uitzondering als 'img' tags te raken zonder 'src' attribuut.

Wat is nieuw in versie 2.3.2:

  • Eigenschappen toegevoegd:
  • lxml.objectify.deannotate () heeft een nieuwe boolean optie cleanup_namespaces aan het objectiveren naamruimtedeclaraties verwijderen (en in het algemeen het schoonmaken van de naamruimtedeclaraties) na het verwijderen van het type annotaties.
  • lxml.objectify eigen subelement () functie kreeg als een kopie van etree.SubElement aan een anders overbodige import van lxml.etree aan de gebruiker kant te voorkomen.
  • Bugs vastgesteld:
  • Vast de & quot; afstammeling & quot; bug in cssselect een tweede keer (na een eerste fix in LXML 2.3.1). Het vorige verandering resulteerde in een serieuze prestatie regressie voor de XPath gebaseerde evaluatie van de vertaalde uitdrukking. Merk op dat deze breekt het gebruik van enkele van de gegenereerde XPath expressies als XSLT locatie paden die eerder werkte in 2.3.1.
  • Vast parsing van enkele selectors in cssselect. Witruimte na combinatoren & quot; & # x3e; & quot ;, & quot; + & quot; en & quot; ~ & quot; is nu correct genegeerd. Eerder is werd ontleed als een afstammeling combinator. Bijvoorbeeld, & quot; div & # x3e; .foo & quot; div & # x3e;; * .foo & quot werd hetzelfde als & quot ontleed; in plaats van & quot; div & # x3e; .foo & quot;.

Wat is nieuw in versie 2.3.1:

  • Eigenschappen toegevoegd:
  • Nieuwe optie kill_tags in lxml.html.clean om specifieke labels en de inhoud (dwz hun hele subtree) te verwijderen.
  • pi.get () en pi.attrib op de verwerking van instructies aan pseudo-attributen ontleden van de inhoud van de tekst van de verwerking instructies.
  • lxml.get_include () geeft een lijst met onder andere paden die kunnen worden gebruikt om externe C-code tegen lxml.etree compileren. Dit vereist is voor statisch gelinkt LXML bouwt wanneer code moet compileren tegen exact dezelfde header-bestand versies LXML zelf.
  • Resolver.resolve_file () neemt een extra optie close_file dat configureert als het bestand (-achtige) object zal worden gesloten na het lezen of niet. Standaard wordt het bestand gesloten worden, als de gebruiker niet wordt verwacht dat een verwijzing te houden aan het.
  • Bugs vastgesteld:
  • HTML reiniging niet 'data:' verwijderen. Koppelingen
  • De html5lib parser integratie maakt nu gebruik van de 'officiële' implementatie in html5lib zelf, waardoor het werken met nieuwere versies van de bibliotheek.
  • In lxml.sax, kon endElementNS () ten onrechte een gewone tag naam weigeren wanneer de bijbehorende start event afgeleid dezelfde vlakte tag naam om in de standaard namespace.
  • Bij een open bestand-achtig object wordt doorgegeven aan parse () of iterparse (), zal de parser niet meer dicht na gebruik. Dit keert een verandering in LXML 2.3, waar alle bestanden zou worden gesloten. Het is de verantwoordelijkheid van gebruikers om het bestand (-achtige) object goed sluiten, ook in de fout gevallen.
  • Bewering fout in lxml.html.cleaner bij inlevering van top-level elementen.
  • In lxml.cssselect, gebruik dan de xpath 'A // B' (kort voor 'A / afstammeling-of-zelf :: knooppunt () / B') in plaats van "A / afstammeling :: B 'voor de css afstammeling selector ('A B'). Dit maakt een paar rand gevallen in overeenstemming met de selector gedrag in WebKit en Firefox, te zijn en maakt meer css uitdrukkingen geldige locatie paden (voor gebruik in xsl: template match).
  • In lxml.html, niet-geselecteerde & # X3c; optie & # x3e; labels tonen niet meer in de verzamelde vorm waarden.
  • toevoegen / verwijderen & # X3c; optie & # x3e; waarden naar / van een meervoudige vorm veld select goed selecteert hen en deze gedeactiveerd hen.
  • Andere wijzigingen:
  • Statische bouwt u de download directory met de optie --download-dir te geven.

Wat is nieuw in versie 2.3:

  • Eigenschappen toegevoegd:
  • Bij het zoeken naar kinderen, lxml.objectify neemt '{} tag' in de betekenis van een lege namespace, in tegenstelling tot de ouder namespace.
  • Bugs vastgesteld:
  • Als u klaar bent het lezen van een bestand-achtig object, de parser zijn .close () methode oproepen onmiddellijk.
  • Als u klaar bent parsing, iterparse () sluit onmiddellijk de input-bestand.
  • Werk-rond voor libxml2 bug die de HTML-parser kan achterlaten in een niet-functionele staat na een severly gebroken document (in libxml2 2.7.8 vast) parsing.
  • Marque tag in HTML cleanup code correct is vernoemd tent.
  • Andere wijzigingen:
  • Een aantal publieke functies in de Cython-level C-API hebben meer expliciete return types.

Wat is nieuw in versie 2.3beta1:

  • Bugs vastgesteld:
  • Crash in libxml2 nieuwere versies als bewegende elementen tussen documenten die attributen vervangen XInclude knooppunten gehad.
  • XMLID () functie ontbrak de optionele parser en base_url parameters.
  • Zoeken naar wildcard-tags in iterparse () werd gebroken in PY3.
  • lxml.html.open_in_browser () werkte niet in Python 3 door het gebruik van os.tempnam. Het duurt nu een parameter optionele 'encoding'.

Vergelijkbare software

Grappelli
Grappelli

18 Apr 16

python-money
python-money

5 Jun 15

geopy
geopy

1 Mar 15

Reacties op lxml

Reacties niet gevonden
Commentaar toe te voegen
Zet op de beelden!