blob: 025d3ca705e00bcfeb528731bbaf5686fdfb1b73 [file] [log] [blame]
#!/usr/bin/env python
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
import sys
from optparse import OptionParser
from tracwikiimporter.scripts.wiki_from_trac.extractors import WikiExporter
def parse_options():
parser = OptionParser(
usage='%prog <Trac URL>\n\nExport wiki pages from a trac instance')
parser.add_option('-o', '--out-file', dest='out_filename',
help='Write to file (default stdout)')
parser.add_option('-v', '--verbose', dest='verbose', action='store_true',
help='Verbose operation')
parser.add_option('-c', '--converter', dest='converter',
default='html2text',
help='Converter to use on wiki text. '
'Available options: html2text (default) or regex')
options, args = parser.parse_args()
if len(args) != 1:
parser.error('Wrong number of arguments.')
converters = ['html2text', 'regex']
if options.converter not in converters:
parser.error('Wrong converter. Available options: ' +
', '.join(converters))
return options, args
if __name__ == '__main__':
options, args = parse_options()
exporter = WikiExporter(args[0], options)
out = sys.stdout
if options.out_filename:
out = open(options.out_filename, 'w')
exporter.export(out)