1

定期的に更新される一連のメタデータファイルがxmlにあり、自動化しようとしています。xmlの目的の要素のテキストを繰り返し検索して置き換える方法を考え出しましたが、要素にアクセスして変更する直接的な方法が必要だと考えました。私はそれを解決することはできません。

メタデータxmlの形式は次のとおりです。

<?xml version="1.0" ?>
    <metadata xml:lang="en">
       <Esri>
          <CreaDate>20120405</CreaDate>
          <CreaTime>13113000</CreaTime>
          <ArcGISFormat>1.0</ArcGISFormat>
          <SyncOnce>TRUE</SyncOnce>
          <ModDate>20121129</ModDate>
          <ModTime>11433300</ModTime>
          <ArcGISProfile>ItemDescription</ArcGISProfile>
       </Esri>
       <dataIdInfo>
          <idPurp>Updated :: 121129_114038</idPurp>     
       </dataIdInfo>
    </metadata>

私の反復的なアプローチは次のとおりです。

for child in root:
    for xel in child.iter('idPurp'):
        download_new_datetime = strftime('%y%m%d_%H%M%S')
        download_new_text = 'Downloaded :: '
        xel.text = download_new_text + download_new_datetime
        tree.write(xmlfile)

アイデアはより良い方法で高く評価されました。

4

2 に答える 2