X-Git-Url: http://dolda2000.com/gitweb/?a=blobdiff_plain;f=manga%2Fkakalot.py;h=d3b82a3f30bb3845a053b104a132be488ee1aa48;hb=HEAD;hp=96a7c2879924cc14e4a3b8c5a01c16a687de57b8;hpb=b60d34a70d5578e50232db9718f029021d3927a7;p=automanga.git diff --git a/manga/kakalot.py b/manga/kakalot.py index 96a7c28..d3b82a3 100644 --- a/manga/kakalot.py +++ b/manga/kakalot.py @@ -1,4 +1,4 @@ -import bs4 +import bs4, json, urllib from urllib.parse import urljoin from . import lib, htcache soup = bs4.BeautifulSoup @@ -15,7 +15,7 @@ class page(lib.page): self.iurl = url def open(self): - return lib.stdimgstream(self.iurl) + return lib.stdimgstream(self.iurl, referer=self.chapter.url) def __str__(self): return self.name @@ -108,3 +108,17 @@ class library(lib.library): if name is None: raise KeyError(id) name = name.string return manga(self, id, name, url) + + def search(self, expr): + values = {"searchword": expr} + req = urllib.request.Request(self.base + "home_json_search", + urllib.parse.urlencode(values).encode("ascii"), + headers={"User-Agent": "automanga/1"}) + with urllib.request.urlopen(req) as resp: + rc = json.loads(resp.read().decode("utf-8")) + for obj in rc: + if "nameunsigned" in obj: + try: + yield self.byid(obj["nameunsigned"]) + except KeyError: + pass