XMLWriter

class astropy.utils.xml.writer.XMLWriter(file)[ソース]

ベースクラス: object

作成フォーマットが良好でインデントの良いXMLのクラスである.

使用方法は以下のとおりである.

w = XMLWriter(fh)
with w.tag('html'):
    with w.tag('body'):
        w.data('This is the content')

これはこうなります

<html>
 <body>
  This is the content
 </body>
</html>
パラメータ
fileクラス作成可能ファイル

方法要約

close \(ID)

開いた要素は、所与の識別子によって識別される要素まで閉じられる。

comment (備考)

出力ストリームにアノテーションを付加する.

data \(テキスト)

文字データを出力ストリームに追加する.

element \(タグ)[, text, wrap, attrib] )

元素全体を追加します。

end \([tag, indent, wrap] )

現在の要素をオフにする(最近の対から start )。

flush \()

get_indentation \()

ファイルが現在位置しているインデントレベル数を返します。

get_indentation_spaces \([offset] )

現在のインデントレベルに一致したスペース文字列を返します。

object_attrs (obj,attrs)

オブジェクト上に1組の属性を持つオブジェクトを辞書に変換して提供する XMLWriter それがそうです。

start \(タグ)[, attrib] )

新しい要素を開きます

tag \(タグ)[, attrib] )

方法包装要素の便利な方法を作成する。 with 陳述する。

xml_cleaning_method \([method] )

コンテキストマネージャは、潜在的なセキュリティのない文字または構造を除去するために、XMLデータタグをどのように除去(転義)するかを制御するために使用される。

方法文書

close(id)[ソース]

開いた要素は、所与の識別子によって識別される要素まで閉じられる。

パラメータ
id集積する.

要素識別子は start 方法です。

comment(comment)[ソース]

出力ストリームにアノテーションを付加する.

パラメータ
comment応力.応力

アノテーションテキストは,Unicode文字列である.

data(text)[ソース]

文字データを出力ストリームに追加する.

パラメータ
text応力.応力

文字データは,Unicode文字列とする.

element(tag, text=None, wrap=False, attrib={}, **extra)[ソース]

Adds an entire element. This is the same as calling start, data, and end in sequence. The text argument can be omitted.

end(tag=None, indent=True, wrap=False)[ソース]

現在の要素をオフにする(最近の対から start )。

パラメータ
tag応力.応力

要素名。与えられた場合,タグは開始タグと一致しなければならない.省略されている場合、現在の要素は閉じられる。

flush()[ソース]
get_indentation()[ソース]

ファイルが現在位置しているインデントレベル数を返します。

get_indentation_spaces(offset=0)[ソース]

現在のインデントレベルに一致したスペース文字列を返します。

static object_attrs(obj, attrs)[ソース]

オブジェクト上に1組の属性を持つオブジェクトを辞書に変換して提供する XMLWriter それがそうです。

パラメータ
obj客体.

どんなPythonオブジェクトでも

attrs文字列列

オブジェクトから引き出す属性名

返品
attrsディクト!

検索された値に属性名をマッピングする obj.attr それがそうです。もし何か属性があれば None これは,出力辞書には現れない.

start(tag, attrib={}, **extra)[ソース]

新しい要素を開きます属性はキーワードパラメータとして与えられてもよいし,文字列/文字列辞書として与えられてもよい.この方法は、不透明な識別子を返し、識別子を渡すことができる。 close() この要素の前(この要素を含む)のすべてのオープン要素を閉じるための方法。

パラメータ
tag応力.応力

元素名

attrib文字列の辞書->文字列

属性辞書です。あるいは,属性はキーワードパラメータとして与えることができる.

返品
id集積する.

要素識別子を返します。

tag(tag, attrib={}, **extra)[ソース]

方法包装要素の便利な方法を作成する。 with 陳述する。

実例.

>>> with writer.tag('foo'):  
...     writer.element('bar')
... # </foo> is implicitly closed here
...

パラメータはこれと同じである start それがそうです。

xml_cleaning_method(method='escape_xml', **clean_kwargs)[ソース]

コンテキストマネージャは、潜在的なセキュリティのない文字または構造を除去するために、XMLデータタグをどのように除去(転義)するかを制御するために使用される。

The default (method='escape_xml') applies brute-force escaping of certain key XML characters like <, >, and & to ensure that the output is not valid XML.

いくつかのXMLタグ(例えば、リンク参照または強調タグ)を明示的に許可するために、使用してください。 method='bleach_clean' それがそうです。これは使用されます clean 機能しています https://bleach.readthedocs.io/en/latest/clean.html 小包です。他のキーワードパラメータは直接伝達されます clean 機能します。

最後に使用するのは method='none' 清掃を無効にするためには、以下の操作を実行してください。これは慎重に使用されなければならない。

例::

w = writer.XMLWriter(ListWriter(lines))
with w.xml_cleaning_method('bleach_clean'):
    w.start('td')
    w.data('<a href="https://google.com">google.com</a>')
    w.end()
パラメータ
method応力.応力

掃除の仕方。許容値は、“ESCAPE_XML”、“BLEACH_CLEAN”、“NONE”である。

**clean_kwargsキーワードパラメータ

Bleach.lean()関数の他のキーワードパラメータに渡す.