Этот код я получил где-то в Интернете, и я его отредактировал.Как загрузить файлы XML из каталога, пожалуйста,
Как загрузить файл XML из моего каталога? Есть какой-либо способ сделать это?
from elementtree import ElementTree as et
# Load the xml content from a string
content = et.fromstring("C:\DATA\US_Patent_Data\2012\ipgb20120103_wk01\ipgb20120103.xml")
# Get the person or use the .findall method to get all
# people if there's more than person
applicant = content.find("applicant")
last_name = applicant.find("addressbook/last-name")
first_name = applicant.find("addressbook/first-name")
# Get the persons address
address = addressbook.find("address")
street = address.find("street")
city= address.find("city")
state = address.find("state")
postcode = address.find("postcode")
country = address.find("country")
# Print output
print "sequence: " + applicant.attrib.get('sequence')
print "first name: " + first_name.text
print "last name: " + last_name.text
print "street: " + street.text
print "city: " + city.text
print "state: " + state.text
print "postcode: " + postcode.text
print "country: " + country.text
Я управлял программой, это то, что я получил. я скопировал часть из них ...
File "C:\Python27\lib\site-packages\elementtree\ElementTree.py", line 1292, in feed
self._parser.Parse(data, 0)
ExpatError: не хорошо сформированные (недействительный маркер): строка 1, столбец 2
он говорит что-то вроде this.'IOError: [Errno 2] Нет такого файла или каталога: «C: \\ DATA \\ US_Patent_Data \ x812 \\ ipgb20120103_wk01 \\ ipgb20120103. xml'' Всякий раз, когда я использую etree.parse, я всегда получаю что-то вроде этого. –
Это смешно странно, как 2012 можно изменить на x812. Я думаю, что он меняет путь ... Я переместил файлы на рабочий стол, теперь он дает мне другую ошибку 'Файл 'C: \ Python27 \ lib \ site-packages \ elementtree \ ElementTree.py", строка 1292, в фиде self._parser.Parse (data, 0) ExpatError: junk после элемента документа: строка 414, столбец 0' –
Кстати, вы можете использовать относительные пути. Например, если файл xml и ваш скрипт находятся в одном каталоге: ET.parse ("ipgb20120103.xml"). Предоставьте полную трассировку стека ошибок и убедитесь, что ur xml действителен. – alecxe