X-Git-Url: http://dolda2000.com/gitweb/?p=automanga.git;a=blobdiff_plain;f=manga%2Fkakalot.py;fp=manga%2Fkakalot.py;h=9a5fb03fc018b47b8298f191789f39435808b255;hp=96a7c2879924cc14e4a3b8c5a01c16a687de57b8;hb=5fe339881710fe5c84dcf2c184481ef3215d1320;hpb=aaab61eebf2f076758cd55033a1f6af2db8ea10d diff --git a/manga/kakalot.py b/manga/kakalot.py index 96a7c28..9a5fb03 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 @@ -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