SORU
12 AĞUSTOS 2008, Salı


Nasıl Python xpath kullanmak için?

Tam bir uygulama var mı? Kütüphaneden nasıl kullanılır, nerede web sitesi.

CEVAP
26 AĞUSTOS 2008, Salı


libxml2 avantajları bir numarası vardır

  1. spec uygunluk
  2. Etkin geliştirme ve toplum katılımı
  3. Hız. Bu gerçekten bir C uygulaması etrafında bir python sarıcı.
  4. Aynı anda her yerde. Libxml2 library yaygın ve bu nedenle de test edilmiştir.

Olumsuzlukları şunlardır:

  1. spec uygunluk. Katı. Varsayılan ad kullanma gibi şeyler diğer kütüphanelerde daha kolay.
  2. Yerel kod kullanımı. Bu bir ağrı uygulama dağıtılır nasıl bağlı olabilir / konuşlandırdı. Rpm bu ağrı bazı hafifletmek kullanılabilir.
  3. Manuel kaynak kullanma. Aramalar aşağıda örnek freeDoc() Not ve xpathFreeContext(). Bu çok Pythonic değildir.

Eğer basit bir yol seçimi yapıyorsanız, ElementTree sopa ile Python 2.5 ile birlikte ). Tam spec uyum ya da çiğ hızı gerekir ve yerel kod dağıtımı ile başa çıkabilir, libxml2 ile gitmek.

Libxml2 XPath Kullanımı örnek



import libxml2

doc = libxml2.parseFile("tst.xml")
ctxt = doc.xpathNewContext()
res = ctxt.xpathEval("//*")
if len(res) != 2:
    print "xpath query: wrong node set size"
    sys.exit(1)
if res[0].name != "doc" or res[1].name != "foo":
    print "xpath query: wrong node set value"
    sys.exit(1)
doc.freeDoc()
ctxt.xpathFreeContext()

ElementTree XPath Kullanımı örnek




from elementtree.ElementTree import ElementTree
mydoc = ElementTree(file='tst.xml')
for e in mydoc.findall('/foo/bar'):
    print e.get('title').text


Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • MrOctopi

    MrOctopi

    6 Aralık 2010
  • RaverX DouBle StAg XI

    RaverX DouBl

    23 Mayıs 2008
  • williamfitzsimmons

    williamfitzs

    14 Mart 2008