タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

pythonとxmlに関するpipeheadのブックマーク (6)

  • PythonでExpatを使用してXML文書の高速な解析を行う - 試験運用中なLinux備忘録・旧記事

    (バージョン2.0以上の)Pythonでは、Expatというライブラリが提供する機能(xml.parsers.expatモジュール)により、XML文書の構文高速にを解析することができる。 解析器の種類としてはストリーム型かつイベント駆動型となり、文書の内容を先頭から読み進めて、要素などを発見したところで内部的な「イベント」が発生し、特定の(ハンドラ)関数が呼び出される仕組みになっている。 なお、Pythonではこの他に、同じタイプのxml.saxと、XMLツリー全体を保持するタイプのxml.dom(の系列)も用意されていて、いずれもバージョン2.0から利用できる(ここでは扱わない)。 Python ライブラリリファレンス: 13.5 xml.parsers.expat -- Expat を使った高速な XML 解析 Python ライブラリリファレンス: 13.6 xml.dom -- 文

    PythonでExpatを使用してXML文書の高速な解析を行う - 試験運用中なLinux備忘録・旧記事
  • elementtree - chrono-meterの日記

    正直どうかと思うよ。 きちんとしてない XML の解析は BeautifulSoup でやる方が楽。 インポート Python 2.5 からは標準モジュールになったので場所が違うらしい。 try: from xml.etree import ElementTree except: from elementtree import ElementTree 文字列から解析 root = ElementTree.fromstring(contents) エレメント 真偽値は常に False になるっぽい #タグ名 しばしば名前空間が付くので使いにくい e.tag #属性 e.attrib #中身 e.text #子エレメント e.getChildren() #すべて列挙 e.getiterator() #検索 XPathのサブセット e.find(path), e.findall(path) 名前

    elementtree - chrono-meterの日記
  • Python/XML HOWTO

    1 Introduction to XML ch1 では、XML と、関連する標準について概要説明する。 詳細について知りたければ、W3C 勧告を読むのが一番。(1.4節にリンクがある) XML について知っていれば、ch1 はトバしてよい。 Ch2 以降では XML に関する術語については知っているものとする。 Java SAX の実装についての知識は前提としない。 1.1 Elements, Attributes and Entities XML ドキュメントは単一のエレメントから構成される。 エレメントはタグで表される。 タグは常に角括弧対 <> で囲まれている。 エレメントは開きタグと閉じタグの間にコンテンツを含むことができる。下に例を示す。 HTML と違って XML のタグでは、大文字小文字を識別する。 <name>Euryale</name> カラのエレメントは、タグ末尾のス

  • PythonでXMLを扱う(6) - 二十代は模索のときブログ

    Python MemoSAXにてXMLの階層構造を扱う際、あるタグの内部に入ったことをフラグにて判断する方法があると思う。例えば以下のようにフラグを用いることで、hogeタグの内部に入ったのか入っていないのかを判断できる。 class SimpleHandler(ContentHandler): def __init__(self): self.inHoge = False def startElement(self, name, attrs): if.name == "hoge": self.inHoge = True def endElement(self, name): if.name == "hoge": self.inHoge = False ただこれ、もうちょっとスマートに出来ないものかと、ContentHandlerを動的に変更することができないかどうか試してみた。それが出来

  • PythonでXMLを扱う(5) - 二十代は模索のときブログ

    Python Memo前回まではDOMを使っていたが、今回からはSAX(Simple API for XML)を使ってXMLを扱ってみる。DOMと違ってメモリ上にXMLファイルの情報を全て読み込むようなことはなく、順次読み込みを行い、読み込んだ内容に対して逐次イベントを発生させる仕組みのAPIである。Wikipedia : Simple API for XMLXML文書をツリー構造として扱うDOMと異なり、一連のイベントとして表現するイベント駆動型のAPIである。したがって、アプリケーションが積極的にAPIにアクセスするDOMに対し、SAXではアプリケーションがイベントが来るのを待ち受ける受動的な動作が大部分を占める。あるXMLを扱うアプリケーションを作成する際、DOMを使うかSAXを使うかは、両者のメリットデメリットをしっかり認識した上で扱うべきであるが、一般的に大きなサイズのXMLファ

  • ElementTreeモジュールについて — PythonMatrixJp

    ElementTreeの使い方の基礎 XMLパーサライブラリであるElementTreeの使い方! 目次 特長 ピュアPythonコードで実現されているので、 プラットフォームを選ばず、コンパイルレスで動作します。 (当サイトではCGIサーバにインストールして使っています。) Pythonオブジェクト形式でアクセス出来るようになっており、 Pythonユーザには扱いやすい。 おんなじスペックで速度が必要ならcElementTreeというモジュールもあるようです。 Python2.5以降では標準で内蔵されるようになりました。 Python2.5以降を使う場合、パッケージの入手は必要ありません。 ただし、importするパッケージ名が変わっています。 以下の文書におけるパッケージ名「elementtree」を「xml.etree」に読み替えてください。

  • 1