Извлечение данных из файла xml с помощью python - PullRequest
0 голосов
/ 07 февраля 2020

Я хотел бы извлечь определенные точки данных из загруженного файла xml (https://s3.amazonaws.com/irs-form-990/201542399349300614_public.xml).

import pandas as pd
import csv
import os
from os import path
from xml.dom import minidom
from xml.etree import ElementTree
import requests
from bs4 import BeautifulSoup
#from IRS_Download import *
import sys

for o in object_id:
    file_name = "" + o + ".xml"
    basepath = path.dirname(__file__)
    filepath = path.abspath(path.join(basepath, file_name))
    dom = minidom.parse(filepath)
    EmIdN = dom.getElementsByTagName('EIN')
    print(EmIdN)

Это, однако, возвращает только:

Элемент DOM: EIN в 0x1132eecc0

Любая идея, что я делаю неправильно ??

1 Ответ

0 голосов
/ 13 февраля 2020

Я решил это сейчас так:

tree = ET.parse(xml_tree)
    root = tree.getroot()
    #prints out all tags to see the paths
    #for elemtn in root.iter():
    #   print(elemtn)
    if tree.find('.//{http://www.irs.gov/efile}EIN') is not None:
        info = tree.find('.//{http://www.irs.gov/efile}EIN').text
        EIN.append(info)
    else:
        info = 'Null'
        EIN.append(info)
...