問題タブ [minidom]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
5 に答える
58304 参照

python - Python minidom を使用して XML を読み取り、各ノードを反復処理する

次のような XML 構造がありますが、はるかに大規模です。

このために、次のコードを使用しました。

ただし、出力される著者テキストは「なし」です。以下のようなバリエーションをいじってみましたが、プログラムが壊れてしまいます。

正しい出力は次のようになります。

しかし、私が得るものは次のとおりです。

この問題に取り組む方法について何か提案はありますか?

0 投票する
5 に答える
89209 参照

python - Python と minidom による XML 解析

Python (minidom) を使用して、次のような階層構造を出力する XML ファイルを解析しています (ここでは、重要な階層関係を示すためにインデントを使用しています)。

代わりに、プログラムはノードに対して複数回反復し、次の出力重複ノードを生成します。(各反復でノード リストを見ると、なぜこれを行うのかは明らかですが、探しているノード リストを取得する方法が見つからないようです。)

XML ソース ファイルは次のとおりです。

Python プログラムは次のとおりです。

下位レベルのトピック名を「SubTopic1」や「SubTopic2」などに変更することで、「Topic」要素をネストしないことで問題を解決できました。しかし、さまざまな要素名を必要とせずに、組み込みの XML 階層構造を利用したいと考えています。「トピック」要素をネストできるはずであり、現在どのレベルの「トピック」を見ているのかを知る方法があるはずです。

私は多くの異なる XPath 関数を試しましたが、あまり成功しませんでした。

0 投票する
1 に答える
1098 参照

python - XML属性がソートされます

minidomを使用してドキュメントを作成すると、属性は要素内でアルファベット順に並べ替えられます。ここからこの例を見てください:

結果は次のとおりです。

作成された名前/ニックネーム/電子メール/写真の順序ではなく、電子メール/名前/ニックネーム/写真の順序で属性が必要な場合は、これで十分です。

属性を作成した順序で表示するにはどうすればよいですか?または、どのように順序を制御しますか?

0 投票する
2 に答える
10285 参照

python - Pythonのxml.dom.minidomで要素のIDを設定するには?

方法?ドキュメントと要素を作成しました:

setIdAttribute は機能しません:(

これを手動で設定すると、getElementById はそれを見つけることができません。

私がしなければならないこと?

0 投票する
2 に答える
2787 参照

python - minidomを使用して指定された範囲内のHTMLリンクを取得します

Pythonとxml.dom.minidomを使用<table>して、テーブルIDで指定された特定の範囲内のリンクのリストを取得しようとしています。いくつかの

Pythonとxml.dom.minidomを使用<table>して、テーブルIDで指定された特定の範囲内のリンクのリストを取得しようとしています。いくつかの優れたアドバイスに基づいて、パターンマッチングの代わりにDOMを使用しようとしています。

タグ名page.getElementsByTagName('a')ですべてのリンクを取得できますが、IDが「monthly-short-sale」のテーブルにのみ含まれているリンクから返されるリンクを制限することはできません。使用するとgetElementByIdNoneが返されます。

これは、「月次短期販売」IDがDTD内で定義されていないためですか?もしそうなら、この情報を抽出するための最良の方法は何でしょうか?

これが私が現在使用しているコードです。これは機能しますが、神に対して罪を犯します。


最初にTABLE要素を見つけてから、その要素でgetElemenetByTagNameを呼び出したいと思います。これにより、テーブル要素の子であるすべての要素が返されます。また、HTMLがXHTMLであることを再確認してください。minidomは、HTMLではなくXMLを解析することを目的としています。

0 投票する
2 に答える
4296 参照

python - Python:xml.dom.minidom empty nodeValue nonempty toxml()value

ノードのnodeValueを取得する行があります。

それは何も返しません:

私がする時:

それは戻ります:

ここで何が起こっているのかわかりません。別のデータポイント:nodeValueの代わりにnodeNameを実行すると、予想どおりUrlが返されます。

何かご意見は?

0 投票する
2 に答える
2387 参照

python - Pythonでminidomを使用してDTDを設定する

minidomを使用してXMLドキュメントにDTDへの参照を含めようとしています。

私は次のようなドキュメントを作成しています:

これは私に与えます:

私は次のようなものを入手する必要があります:

0 投票する
3 に答える
6043 参照

python - Pythonを使用してSVGファイルの「id」フィールドで要素を見つける方法

以下は、.svgファイル(xml)からの抜粋です。

私はPythonを学んでいますが、XXが数値である場合に等しいフィールドtextを持つそのような要素をすべて見つける方法がわかりません。idlibcode-XX

minidomのパーサーを使用してこの.svgファイルをロードし、を使用して要素を見つけようとしましgetElementByIdた。しかし、私はNone結果を得ています。

他のSOの質問を追いかけて、運が悪かったオブジェクトで使用setIdAttribute('id')してみました。svgTemplate

結論:の形式でstextを持つこれらの要素をすべて抽出するためのスマートな方法のヒントを教えてください。その後、テキストを取得して生成されたコンテンツに置き換えることは問題ありません。idlibcode-XXtspan

0 投票する
3 に答える
18657 参照

python - minidomの属性を持つ要素を検索

与えられた

すべてのタグを繰り返し処理して属性を確認せずに、name = "frame.len"のフィールドをすぐに取得するにはどうすればよいですか?

0 投票する
1 に答える
14171 参照

python - xml.dom.minidom を使用して要素の値を更新する

次のような XML 構造があります。

xml.dom.minidom のみを使用する (制限) したい

1) XML ファイルをトラバースする

2)親に応じて、特定の要素を検索/取得する

例: author1 の checkout 要素、author2 の isbn

3)その要素の値を変更/設定する

4) 新しい XML 構造をファイルに書き込む

誰でもここで助けることができますか?

ありがとうございました!

更新

これは私が今までやってきたことです