Exemple #1
0
    def fetch_collectionpage(self, api):
        cp = self.options.collectionpage
        if cp is None:
            return api

        try:
            cp = unicode(urllib.unquote(str(cp)), "utf-8")
        except Exception:
            pass

        self.nfo["collectionpage"] = cp

        val = api.fetch_pages([cp])
        rawtext = val["pages"].values()[0]["revisions"][0]["*"]
        mb = self.metabook = parse_collection_page(rawtext)
        wikitrust(api.baseurl, mb)

        # XXX: localised template parameter names???
        meta = extract_metadata(rawtext,
                                ("cover-image", "cover-color", "text-color",
                                 "editor", "description", "sort_as"))
        mb.editor = meta["editor"]
        mb.cover_image = meta["cover-image"]
        mb.cover_color = meta["cover-color"]
        mb.text_color = meta["text-color"]
        mb.description = meta["description"]
        mb.sort_as = meta["sort_as"]

        p = os.path.join(self.fsout.path, "collectionpage.txt")
        if isinstance(rawtext, unicode):
            rawtext = rawtext.encode("utf-8")
        open(p, "wb").write(rawtext)
        return api
Exemple #2
0
    def fetch_collectionpage(self, api):
        cp = self.options.collectionpage
        if cp is None:
            return api

        try:
            cp = unicode(urllib.unquote(str(cp)), "utf-8")
        except Exception:
            pass

        self.nfo["collectionpage"] = cp

        val = api.fetch_pages([cp])
        rawtext = val["pages"].values()[0]["revisions"][0]["*"]
        mb = self.metabook = parse_collection_page(rawtext)
        wikitrust(api.baseurl, mb)

        # XXX: localised template parameter names???
        meta = extract_metadata(
            rawtext, ("cover-image", "cover-color", "text-color", "editor", "description", "sort_as")
        )
        mb.editor = meta["editor"]
        mb.cover_image = meta["cover-image"]
        mb.cover_color = meta["cover-color"]
        mb.text_color = meta["text-color"]
        mb.description = meta["description"]
        mb.sort_as = meta["sort_as"]

        p = os.path.join(self.fsout.path, "collectionpage.txt")
        if isinstance(rawtext, unicode):
            rawtext = rawtext.encode("utf-8")
        open(p, "wb").write(rawtext)
        return api
Exemple #3
0
        def got_pages(val):
            rawtext = val["pages"].values()[0]["revisions"][0]["*"]
            mb = self.metabook = parse_collection_page(rawtext)
            wikitrust(api.baseurl, mb) # XXX blocking twisted reactor. we really should use gevent

            # XXX: localised template parameter names???
            meta = extract_metadata(rawtext, ("cover-image", "cover-color", "text-color", "editor", "description", "sort_as"))
            mb.editor = meta["editor"]
            mb.cover_image = meta["cover-image"]
            mb.cover_color = meta["cover-color"]
            mb.text_color = meta["text-color"]
            mb.description = meta["description"]
            mb.sort_as = meta["sort_as"]

            p = os.path.join(self.fsout.path, "collectionpage.txt")
            if isinstance(rawtext, unicode):
                rawtext=rawtext.encode("utf-8")
            open(p,"wb").write(rawtext)
            return api