6

私はいくつかのhtmlを開いて解析しようとしています。これまでのところ、問題はありませんでした。たとえば、ソースを開いて印刷することができました。しかし、解析に関しては、「ElementTree インスタンスには属性 'fromstring' がありません」で行き詰まっています。

これは私の Django view.py コードです:

from django.template import loader, Context
from django.http import HttpResponse
import urllib
from xml.etree.ElementTree import ElementTree

def transform (request):
  opener = urllib.FancyURLopener({})
  f = opener.open("http://www.google.com/")
  r = f.read()
  f.close()
  tree = ElementTree()
  tree.fromstring(r)
  p = tree.find("body/h1")
  t = loader.get_template("transform.html")
  c = Context({'neco': p })
  return HttpResponse(t.render(c))

Django バージョン: 1.2.4 Python バージョン: 2.6.5

誰かアイデアがありますか?

4

1 に答える 1

19

あなたのインポートステートメントは間違っています...クラスのメソッドではなく、モジュールfromstring内のフリー関数です:xml.etree.ElementTreexml.etree.ElementTree.ElementTree

from xml.etree import ElementTree as etree
...
tree = etree.fromstring(r)
于 2011-02-03T16:12:04.073 に答える