def get_page(self, entry, level, parent): if self.progression: print 'downloading page: ' + entry.page_name.text landing = (entry.GetNodeId() == self.landing_page.id) page = Page(id=entry.GetNodeId(), kind=entry.Kind(), title=entry.title.text, author_name=entry.author[0].name.text, author_email=entry.author[0].email.text, updated=entry.updated.text, revision=entry.revision.text, pagename=entry.page_name.text, parent=parent, etag=entry.etag, landing=landing) if self.etag_old: self.etag_old.check_page(page.id, page.path) if page.kind == LIST_PAGE: list_page = ListPage() for header in entry.data.column: list_page.add_header(header.name) page.list_items = list_page content_str = self.request_page_content(entry.GetNodeId()) self.get_site_content(level=level + 1, parent=page) if page.landing: for attachment in page.attachments: attachment.link = './' + self.landing_page.rel_path + '/' + attachment.name if page.kind == ANNOUNCEMENT: content_str2 = content_str content_str2 = self.replace_paths(page_content=content_str2, level=level - 1, page=page) for attachment in page.attachments: content_str2 = self.replace_attachment_source( page=content_str2, attachment=attachment, parent=page, as_announcement=True) page.embedded_content = content_str2 content_str = self.replace_paths(page_content=content_str, level=level, page=page) for attachment in page.attachments: content_str = self.replace_attachment_source(page=content_str, attachment=attachment, parent=page) page.content = content_str parent.add_child(page)