separate complete_url function
This commit is contained in:
parent
35f755005d
commit
a7ef8a8b7b
24
nevernote.py
24
nevernote.py
@ -101,11 +101,12 @@ def embedded_image(url):
|
|||||||
return 'data:%s;base64,%s' % (ctype, b64pict)
|
return 'data:%s;base64,%s' % (ctype, b64pict)
|
||||||
|
|
||||||
|
|
||||||
def embed_pictures(page, pict_urls):
|
def embed_pictures(page, pict_urls, base_url=None):
|
||||||
for url in pict_urls:
|
for url in pict_urls:
|
||||||
print('New picture: %s' % url)
|
print('New picture: %s' % url)
|
||||||
try:
|
try:
|
||||||
page = page.replace(url, embedded_image(url))
|
page = page.replace(
|
||||||
|
url, embedded_image(complete_url(url, base_url)))
|
||||||
except (ValueError, InfiniteRedirects, ConnectionRefusedError):
|
except (ValueError, InfiniteRedirects, ConnectionRefusedError):
|
||||||
pass
|
pass
|
||||||
return page
|
return page
|
||||||
@ -127,6 +128,14 @@ def write_file(page, title, comment=None):
|
|||||||
a_file.write('<!-- URL: %s -->' % comment)
|
a_file.write('<!-- URL: %s -->' % comment)
|
||||||
|
|
||||||
|
|
||||||
|
def complete_url(url, base_url):
|
||||||
|
if base_url is not None:
|
||||||
|
up = urlparse(url)
|
||||||
|
if not up.netloc:
|
||||||
|
url = '//' + urlparse(base_url).netloc + url
|
||||||
|
return url
|
||||||
|
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
parser = argparse.ArgumentParser(
|
parser = argparse.ArgumentParser(
|
||||||
description='Nevernote - download pages locally.')
|
description='Nevernote - download pages locally.')
|
||||||
@ -139,15 +148,8 @@ def main():
|
|||||||
parser = TitleParser(strict=False)
|
parser = TitleParser(strict=False)
|
||||||
parser.feed(page)
|
parser.feed(page)
|
||||||
|
|
||||||
for picturl in parser.images:
|
page = embed_pictures(page, parser.images, base_url=url)
|
||||||
up = urlparse(picturl)
|
write_file(page, parser.title, comment=url)
|
||||||
if not up.netloc:
|
|
||||||
parser.images.remove(picturl)
|
|
||||||
picturl = '//' + urlparse(url).netloc + picturl
|
|
||||||
parser.images.add(picturl)
|
|
||||||
|
|
||||||
full_page = embed_pictures(page, parser.images)
|
|
||||||
write_file(full_page, parser.title, comment=url)
|
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user