Browse Source

index command changes for python3

add-quote-import
Michael Murtaugh 6 years ago
parent
commit
2e112d386a
  1. 2
      README.md
  2. 34
      etherdump/commands/index.py

2
README.md

@ -9,7 +9,7 @@ Requirements
* python3 * python3
* html5lib * html5lib
* requests (settext) * requests (settext)
* python-datutil, jinja2 (index subcommand) * python-dateutil, jinja2 (index subcommand)
Installation Installation
------------- -------------

34
etherdump/commands/index.py

@ -1,11 +1,20 @@
from __future__ import print_function from __future__ import print_function
from argparse import ArgumentParser from argparse import ArgumentParser
import sys, json, re, os, urlparse import sys, json, re, os
from datetime import datetime from datetime import datetime
try:
# python2
from urllib2 import urlopen, URLError, HTTPError
from urllib import urlencode from urllib import urlencode
from urllib2 import HTTPError from urlparse import urlparse, urlunparse
except ImportError:
# python3
from urllib.parse import urlparse, urlunparse, urlencode, quote
from urllib.request import urlopen, URLError, HTTPError
from jinja2 import FileSystemLoader, Environment from jinja2 import FileSystemLoader, Environment
from common import * from etherdump.commands.common import *
from time import sleep from time import sleep
import dateutil.parser import dateutil.parser
@ -44,9 +53,9 @@ def absurl (url, base=None):
return url return url
def url_base (url): def url_base (url):
(scheme, netloc, path, params, query, fragment) = urlparse.urlparse(url) (scheme, netloc, path, params, query, fragment) = urlparse(url)
path, _ = os.path.split(path.lstrip("/")) path, _ = os.path.split(path.lstrip("/"))
ret = urlparse.urlunparse((scheme, netloc, path, None, None, None)) ret = urlunparse((scheme, netloc, path, None, None, None))
if ret: if ret:
ret += "/" ret += "/"
return ret return ret
@ -116,14 +125,14 @@ def main (args):
pads = map(loadmeta, inputs) pads = map(loadmeta, inputs)
pads = map(fixdates, pads) pads = map(fixdates, pads)
args.pads = pads args.pads = list(pads)
if args.timestamp == None: if args.timestamp == None:
args.timestamp = datetime.now().strftime("%Y-%m-%d %H:%M:%S") args.timestamp = datetime.now().strftime("%Y-%m-%d %H:%M:%S")
padurlbase = re.sub(r"api/1.2.9/$", "p/", info["apiurl"]) padurlbase = re.sub(r"api/1.2.9/$", "p/", info["apiurl"])
if type(padurlbase) == unicode: # if type(padurlbase) == unicode:
padurlbase = padurlbase.encode("utf-8") # padurlbase = padurlbase.encode("utf-8")
args.siteurl = args.siteurl or padurlbase args.siteurl = args.siteurl or padurlbase
args.utcnow = datetime.utcnow().strftime("%a, %d %b %Y %H:%M:%S +0000") args.utcnow = datetime.utcnow().strftime("%a, %d %b %Y %H:%M:%S +0000")
@ -150,14 +159,15 @@ def main (args):
linkbase = args.linkbase or url_base(args.feedurl) linkbase = args.linkbase or url_base(args.feedurl)
# print ("linkbase", linkbase, args.linkbase, args.feedurl) # print ("linkbase", linkbase, args.linkbase, args.feedurl)
for p in pads: for p in args.pads:
print ("p", p, file=sys.stderr)
versions_by_type = {} versions_by_type = {}
p["versions_by_type"] = versions_by_type p["versions_by_type"] = versions_by_type
for v in p["versions"]: for v in p["versions"]:
t = v["type"] t = v["type"]
versions_by_type[t] = v versions_by_type[t] = v
with open (versions_by_type["text"]["path"]) as f: with open (versions_by_type["text"]["path"]) as f:
p["text"] = f.read().decode("utf-8") p["text"] = f.read()
# ADD IN LINK # ADD IN LINK
for v in linkversions: for v in linkversions:
@ -171,6 +181,6 @@ def main (args):
if args.output: if args.output:
with open(args.output, "w") as f: with open(args.output, "w") as f:
print (template.render(vars(args)).encode("utf-8"), file=f) print (template.render(vars(args)), file=f)
else: else:
print (template.render(vars(args)).encode("utf-8")) print (template.render(vars(args)))

Loading…
Cancel
Save