У меня есть такой XML файл:Получение ошибки NoneType при разборе файла XML в Python
<dep type="nsubj">
<governor idx="7">open</governor>
<dependent idx="5">it</dependent>
</dep>
<dep type="aux">
<governor idx="7">open</governor>
<dependent idx="6">will</dependent>
</dep>
<dep type="ccomp">
<governor idx="3">announced</governor>
<dependent idx="7">open</dependent>
</dep>
Я хочу, чтобы разобрать его и извлечь глубокий тип, то есть, как nsubj, AUX, ccomp и т.д. I» m делая вот так:
file_list=[]
with open(xml_file) as f:
page = f.read()
f.close()
soup = BeautifulSoup(page,"xml")
for types in soup.find_all('dep'):
file_list.append(types.string.strip())
print file_list
Но, я получаю ошибку NoneType. Почему это так?
EDIT:
Traceback:
Traceback (most recent call last):
File "/Users/akritibahal/Downloads/stanford-corenlp-2012-07-09/testing.py", line 103, in <module>
main()
File "/Users/akritibahal/Downloads/stanford-corenlp-2012-07-09/testing.py", line 102, in main
extract_top_dependencies('/Users/akritibahal/Downloads/stanford-corenlp-2012-07-09/test')
File "/Users/akritibahal/Downloads/stanford-corenlp-2012-07-09/testing.py", line 80, in extract_top_dependencies
file_list.append(types.string.strip())
AttributeError: 'NoneType' object has no attribute 'strip'
EDIT2:
Я думаю, что это сог, как я делал XML разбора, что он читает между <> этими метками. Но для dep, я хочу извлечь то, что там в type =, и между тегами open и close нет ничего. Как это сделать?
Пожалуйста, отредактируйте полную трассу, где вы получите ошибку NoneType в свой вопрос. – Marius
Какая строка вызывает это? – Eric