mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-09 03:04:10 -04:00
Add support for the <base> tag to web2disk
This commit is contained in:
parent
ed5cc70502
commit
732961c07b
@ -334,19 +334,23 @@ class RecursiveFetcher(object, LoggingInterface):
|
|||||||
dsrc = xml_to_unicode(dsrc, self.verbose)[0]
|
dsrc = xml_to_unicode(dsrc, self.verbose)[0]
|
||||||
|
|
||||||
soup = self.get_soup(dsrc)
|
soup = self.get_soup(dsrc)
|
||||||
|
newbaseurl = f.geturl()
|
||||||
|
base = soup.find('base', href=True)
|
||||||
|
if base is not None:
|
||||||
|
newbaseurl = base['href']
|
||||||
self.log_debug('Processing images...')
|
self.log_debug('Processing images...')
|
||||||
self.process_images(soup, f.geturl())
|
self.process_images(soup, newbaseurl)
|
||||||
if self.download_stylesheets:
|
if self.download_stylesheets:
|
||||||
self.process_stylesheets(soup, f.geturl())
|
self.process_stylesheets(soup, newbaseurl)
|
||||||
|
|
||||||
res = os.path.join(linkdiskpath, basename(iurl))
|
res = os.path.join(linkdiskpath, basename(iurl))
|
||||||
self.downloaded_paths.append(res)
|
self.downloaded_paths.append(res)
|
||||||
self.filemap[nurl] = res
|
self.filemap[nurl] = res
|
||||||
if recursion_level < self.max_recursions:
|
if recursion_level < self.max_recursions:
|
||||||
self.log_debug('Processing links...')
|
self.log_debug('Processing links...')
|
||||||
self.process_links(soup, iurl, recursion_level+1)
|
self.process_links(soup, newbaseurl, recursion_level+1)
|
||||||
else:
|
else:
|
||||||
self.process_return_links(soup, iurl)
|
self.process_return_links(soup, newbaseurl)
|
||||||
self.log_debug('Recursion limit reached. Skipping links in %s', iurl)
|
self.log_debug('Recursion limit reached. Skipping links in %s', iurl)
|
||||||
|
|
||||||
if callable(self.postprocess_html_ext):
|
if callable(self.postprocess_html_ext):
|
||||||
|
Loading…
x
Reference in New Issue
Block a user