次のXMLデータを解析しようとしています。
これは、私が遭遇する2種類のデータのほんの一例です。必要な住所情報を持っている会社と必要な情報を持っていない会社。
データから、次の3つの情報を収集する必要があります。
1)会社名
2)カンパニーストリート
3)会社の郵便番号
私は次のコードでこれを行うことができます:
#Creates list of Company names
CompanyList = []
for company in xmldata.findall('company'):
name = company.find('name').text
CompanyList.append(name)
#Creates list of Company zipcodes
ZipcodeList = []
for company in xmldata.findall('company'):
contact_data = company.find('contact-data')
address1 = contact_data.find('addresses')
for address2 in address1.findall('address'):
ZipcodeList.append(address2.find('zip').text)
#Creates list of Company streets
StreetList = []
for company in xmldata.findall('company'):
contact_data = company.find('contact-data')
address1 = contact_data.find('addresses')
for address2 in address1.findall('address'):
StreetList.append(address2.find('street').text)
しかし、それは私が望んでいることを実際には実行せず、私は私が望むことをどのように実行するかを理解することができません。ある種の「if」ステートメントになると思いますが、わかりません。
問題は、私が持っている場所です。
for address2 in address1.findall('address'):
ZipcodeList.append(address2.find('zip').text)
と
for address2 in address1.findall('address'):
StreetList.append(address2.find('street').text)
XMLに実際に通りの名前または郵便番号がリストされている場所をリストに追加するだけですが、リストが一致するように、その情報がリストされていない会社の目印が必要です。
これが理にかなっていることを願っています。さらに情報を追加する必要がある場合はお知らせください。
しかし、基本的には、会社の郵便番号/通りの名前がない場合は「なし」と入力し、ある場合は郵便番号/通りの名前を入力する方法を見つけようとしています。
任意のヘルプ/ガイダンスをいただければ幸いです。