lxml

Tela Software:
lxml
Detalhes de Software:
Versão: 3.4.1
Data de upload: 17 Feb 15
Revelador: Martijn Faassen
Licença: Livre
Popularidade: 12

Rating: nan/5 (Total Votes: 0)

lxml é um módulo Python sofisticado, poderoso, gratuito e exclusivo que liga as bibliotecas libxml2 e libxslt, permitindo que desenvolvedores de Python para trabalhar tanto com arquivos XML e HTML insider sua Python code.An librarylxml processamento XML é um XML (Extensible Markup Language ) processamento biblioteca escrita na linguagem de programação Python, especificamente projetado para seguir a especificação API ElementTree, tanto quanto possível.
Ele pode estender a API ElementTree para expor a funcionalidade específica das bibliotecas libxslt e libxml2, como Relax NG (Next-Generation), XPath, XML Schema, C14N, XSLT (Extensible Stylesheet Language), etc.Use lxml chamar código Python de stylesheetsDevelopers XSLT será capaz de usar o programa lxml chamar código Python de folhas de estilo XSLT e expressões XPath via funções de extensão. Uma vasta gama de tutoriais estão disponíveis no projeto & rsquo; s homepage (veja o link no final do artigo).
O software é open source por design e combina a integralidade funcionalidade e velocidade das bibliotecas acima mencionados com a simplicidade de Python & rsquo; s API (Application Programming Interface) .Getting começou com lxmlIt é bastante fácil de instalar lxml em uma distribuição GNU / Linux usando o arquivo-fonte distribuído em Softoware eo projeto & rsquo; s site oficial. Basta fazer o download do pacote fonte, salve-o em seu diretório home, descompactá-lo, abra o aplicativo Terminal e navegue até a localização dos ficheiros de arquivo extraído (por exemplo cd /home/softoware/lxml-3.4.1).
Execute o & lsquo; o & rsquo; comando para compilar o programa, que deve levar cerca de 1-2 minutos em um computador moderno. Depois de uma compilação bem-sucedida, execute o & lsquo; make install & rsquo; comando como root ou o & lsquo; sudo make install & rsquo; comando como um usuário privilegiado para instalar wide.Supports sistema lxml GNU / Linux e Microsoft Windows operando systemsThe software é oficialmente suportado em sistemas operacionais GNU / Linux e Microsoft Windows. Ele foi testado com sucesso em computadores de 32 bits e de 64 bits

O que é novo nesta versão:.

  • Features acrescentou:
  • New gerador htmlfile HTML para acompanhar o incremento API xmlfile serialização. Remendo por Burak Arslan.
  • Bugs corrigidos:
  • lxml.sax.ElementTreeContentHandler não inicializar sua superclasse.

O que é novo na versão 3.3.1:

  • Bugs corrigidos:
  • LP # 1014290: documentos HTML analisados ​​com parser.feed () não conseguiu encontrar elementos durante tag iteração
  • .
  • LP # 1273709: Edifício em PyPy falhou devido à falta de apoio para PyUnicode_Compare () e PyByteArray _ * () in C-API do PyPy
  • .
  • LP # 1274413: Compilação em MSVC falhou devido à falta de & quot; stdint.h & quot; arquivo de cabeçalho padrão.
  • LP # 1274118: iterparse () falhou ao analisar BOM prefixado arquivos
  • .

O que é novo na versão 3.0 Alpha 2:

  • Características acrescentou:
  • O método .iter () de elementos agora aceita argumentos da tag como & quot; {*} nome & quot; na procura de elementos com um determinado nome local em qualquer namespace. Com esta adição, todas as combinações de wildcards agora funciona como esperado: & quot; {ns} nome & quot ;, & quot; {} nome & quot ;, & quot; {*} nome & quot ;, & quot; {ns} * & quot ;, & quot; {} * & quot; e & quot; {*} * & quot ;. Note-se que & quot; nome & quot; é equivalente a & quot; {} nome & quot ;, mas & quot; * & quot; é & quot; {*} * & quot ;. A mesma alteração aplica-se ao .getiterator (), (), .itersiblings .iterancestors (), (), .iterdescendants .iterchildren () e .itertext () métodos: o strip_attributes (), strip_elements () e strip_tags () funções bem como o () classe iterparse.
  • C14N permite especificar os prefixos inclusivas para ser promovido a de nível superior durante a serialização exclusivo.
  • Bugs corrigidos:
  • Passar longas cadeias de caracteres Unicode na interface do analisador de alimentação () não conseguiu ler toda a seqüência.

O que é novo na versão 2.3.5:

  • Bater ao mesclar nós de texto em element.remove ( ).
  • Bater em analisador sax / target ao relatar doctype vazio.

O que é novo na versão 2.3.4:

  • Bater na construção de uma nsmap (propriedade do elemento) com URIs namespace vazio.
  • Bater devido à condição de corrida quando os erros (ou mensagens de usuários) ocorrem durante o processamento XSLT roscado.
  • XSLT stylesheet compilação poderia ignorar erros de compilação.

O que é novo na versão 2.3.2:

  • Características acrescentou:
  • lxml.objectify.deannotate () tem uma nova opção cleanup_namespaces boolean para remover as declarações de namespace objetivar (e geralmente limpar as declarações de namespace) após remover as anotações de tipo.
  • lxml.objectify ganhou a sua função própria subelemento () como uma cópia do etree.SubElement para evitar uma importação de outro modo redundante de lxml.etree no lado do usuário.
  • Bugs corrigidos:
  • Corrigido o & quot; descendente & quot; bug em cssselect uma segunda vez (depois de uma primeira correção no lxml 2.3.1). A mudança anterior resultou numa regressão de desempenho sério para a avaliação baseada XPath da expressão traduzida. Note-se que esta quebra o uso de algumas das expressões XPath gerados como XSLT localização caminhos que anteriormente trabalhavam em 2.3.1.
  • parsing fixo de alguns seletores em cssselect. Espaços em branco após combinators & quot; & Gt; & quot ;, & quot; + & quot; e & quot; ~ & quot; é agora correctamente ignorado. Anteriormente se foi analisado como um elemento de combinação descendente. Por exemplo, o termo? Div & gt; .foo & quot; Foi analisado o mesmo como? div & gt; * .foo & quot; em vez de & quot; div & gt; .foo & quot;.

O que é novo na versão 2.3.1:

  • Características acrescentou:
  • Nova opção kill_tags em lxml.html.clean para remover tags específicas e ao seu conteúdo (ou seja, toda a sua sub-árvore).
  • pi.get () e pi.attrib em instruções de processamento para analisar pseudo-atributos do conteúdo de texto de instruções de processamento.
  • lxml.get_include () retorna uma lista de incluir caminhos que podem ser usados ​​para compilar o código externo C contra lxml.etree. Este é especificamente necessária para lxml estaticamente ligado constrói quando o código precisa compilar contra as exatas mesmas versões de arquivo de cabeçalho como lxml si mesmo.
  • Resolver.resolve_file () recebe um close_file opção adicional que configura se o (-como) objeto de arquivo será fechado depois de ler ou não. Por padrão, o arquivo será fechado, como não se espera que o usuário mantenha uma referência a ele.
  • Bugs corrigidos:
  • limpeza HTML não removeu 'dados:'. Ligações
  • A integração parser html5lib agora usa a implementação "oficial" em si html5lib, o que faz com que funcione com as versões mais recentes da biblioteca.
  • Em lxml.sax, endElementNS () poderia descartar incorretamente um nome de tag simples quando o evento de início correspondente inferir o mesmo nome de tag simples para estar no namespace padrão.
  • Quando um objeto como arquivo aberto é passado para parse () ou iterparse (), o analisador não fecha-lo após o uso. Isso reverte uma mudança na lxml 2.3 onde todos os arquivos seriam fechadas. É de responsabilidade do usuário para fechar corretamente o (-como) objeto de arquivo, também em casos de erro.
  • erro de declaração em lxml.html.cleaner quando descartar elementos de nível superior.
  • Em lxml.cssselect, utilize o XPath 'A // B "(abreviação de' A / nó descendente-or-self :: () / B") em vez de "A / descendente :: B 'para o css seletor descendente ('A B'). Isso faz com que alguns casos de ponta para ser coerente com o comportamento selector em WebKit e Firefox, e faz mais expressões CSS caminhos de locais válidos (para uso em xsl: template match).
  • Em lxml.html, as tags não selecionados já não aparecem nos valores do formulário recolhidos.
  • Adicionar / remover valores de / para um campo de formulário de escolha múltipla seleciona-los corretamente e unselects-los.
  • Outras alterações:
  • estático constrói pode especificar o diretório de download com a opção --download-dir.

O que é novo na versão 2.3:

  • Características acrescentou:
  • Ao olhar para as crianças, lxml.objectify leva '{} tag' no sentido de um namespace vazio, ao contrário do namespace pai.
  • Bugs corrigidos:
  • Quando terminar de ler a partir de um objeto como arquivo, o analisador imediatamente chama seu método .close ().
  • Ao terminar a análise, iterparse () fecha imediatamente o arquivo de entrada.
  • Work-around para libxml2 bug que pode deixar o analisador HTML em um estado não-funcional após analisar um documento quebrado severamente (fixo em libxml2 2.7.8).

  • Marquise
  • tag marque no código de limpeza HTML tem o nome correcto.
  • Outras alterações:
  • Algumas funções públicas na de nível Cython C-API têm tipos de retorno mais explícitas.

O que é novo na versão 2.2.8 / 2.3 Beta 1:

  • Bater em versões mais recentes libxml2 quando elementos entre os documentos que tinham atributos em nós XInclude substituídos em movimento.
  • função XMLID () estava faltando os parâmetros do analisador e base_url opcionais.
  • Busca por tags de curinga em iterparse () foi quebrado em PY3.
  • lxml.html.open_in_browser () não funcionou em Python 3, devido ao uso de os.tempnam. Agora leva um parâmetro opcional 'encoding'.

Requisitos :

  • Python

Programas semelhantes

document_it
document_it

11 May 15

mdx_smartypants
mdx_smartypants

14 Apr 15

GLE
GLE

15 Apr 15

Outro software de desenvolvedor Martijn Faassen

hurry.resource
hurry.resource

11 May 15

z3c.relationfield
z3c.relationfield

14 Apr 15

Comentário para lxml

Comentários não encontrado
Adicionar comentário
Ligue imagens!