summaryrefslogtreecommitdiff
path: root/parse_datasheet/parse_320066.py
diff options
context:
space:
mode:
authorNoe Rubinstein <nrubinstein@avencall.com>2012-04-02 11:30:19 +0200
committerNoe Rubinstein <nrubinstein@avencall.com>2012-04-02 11:30:19 +0200
commit9fa99a6f9e885c4e618f68a4498eccc6a91ba29a (patch)
tree1ea25cc05e74610bc42f1f0c05a6b60b99295c20 /parse_datasheet/parse_320066.py
parent2d87b59fdded1589ba0372abb147673f05bd65f6 (diff)
parse datasheets: YAML support
Diffstat (limited to 'parse_datasheet/parse_320066.py')
-rwxr-xr-xparse_datasheet/parse_320066.py13
1 files changed, 11 insertions, 2 deletions
diff --git a/parse_datasheet/parse_320066.py b/parse_datasheet/parse_320066.py
index 75efe14..44fe164 100755
--- a/parse_datasheet/parse_320066.py
+++ b/parse_datasheet/parse_320066.py
@@ -5,6 +5,12 @@ import sys
from pprint import pprint
import json
+try:
+ import yaml
+except ImportError:
+ yaml = None
+
+
from datasheet_tables import load_datasheet_pages, \
abs_tables_from_pages, \
profile_factory
@@ -48,6 +54,8 @@ def main():
parser.add_option("-H", "--human", action="store_true", dest="human", help="print a human-readable description")
parser.add_option("-j", "--json", action="store_true", dest="json", help="save parsed data to JSON")
parser.add_option("-P", "--python", action="store_true", dest="python", help="dump datastructure in Python")
+ if yaml:
+ parser.add_option("-y", "--yaml", action="store_true", dest="yaml", help="save oarsed data to YAML")
parser.add_option("-p", "--pickle", dest="pickle_filename",
help="save parsed data to PICKLE", metavar="PICKLE")
parser.add_option("-f", "--filename", dest="filename", help="Write data to file instead of stdout")
@@ -77,8 +85,9 @@ def main():
elif options.python:
pprint(make_stuff(a_t), out)
elif options.json:
- import json
- print json.dump(make_stuff(a_t), out, indent=4)
+ json.dump(make_stuff(a_t), out, indent=4)
+ elif yaml and options.yaml:
+ yaml.safe_dump(make_stuff(a_t), stream=out)
if out is not sys.stdout:
out.close()