У меня есть несколько проблем с анализом простого HTML с использованием модуля ElementTree из стандартных библиотек Python.Это мой исходный код:
from urllib.request import urlopen
from xml.etree.ElementTree import ElementTree
import sys
def main():
site = urlopen("http://1gabba.in/genre/hardstyle")
try:
html = site.read().decode('utf-8')
xml = ElementTree(html)
print(xml)
print(xml.findall("a"))
except:
print(sys.exc_info())
if __name__ == '__main__':
main()
Если это не удастся, я получу следующий вывод на моей консоли:
<xml.etree.ElementTree.ElementTree object at 0x00000000027D14E0>
(<class 'AttributeError'>, AttributeError("'str' object has no attribute 'findall'",), <traceback object at 0x0000000002910B88>)
Так что xml действительно является объектом ElementTree, когда мы смотрим на документация мы увидим, что класс ElementTree имеет функцию findall.Дополнительная вещь: xml.find ("a") работает нормально, но возвращает экземпляр вместо экземпляра Element.
Так кто-нибудь может мне помочь?Что я недопонимаю?