From cbd13e6d0aff9215ed07cc4e0b2f794aab3942fb Mon Sep 17 00:00:00 2001 From: bloodstalker Date: Sat, 8 Aug 2020 15:00:26 +0430 Subject: now outputs everything at the end if there are no problems. modified to be usable with dmenu. --- kaminokumo | 37 ++++++++++++++++++++++++++----------- 1 file changed, 26 insertions(+), 11 deletions(-) diff --git a/kaminokumo b/kaminokumo index 1053680..94364b7 100755 --- a/kaminokumo +++ b/kaminokumo @@ -14,20 +14,28 @@ from bs4 import BeautifulSoup import subprocess import re + def SigHandler_SIGINT(signum, frame): print() sys.exit(0) + class Argparser(object): def __init__(self): parser = argparse.ArgumentParser() parser.add_argument("--url", type=str, nargs="+", help="url to scrape") - parser.add_argument("--name", type=str, nargs="+", help="url to scrape") - parser.add_argument("--dbg", action="store_true", help="debug", default=False) - parser.add_argument("--demon", action="store_true", help="run as daemon", default=False) - parser.add_argument("--manga", action="store_true", help="run manga scraper", default=False) - parser.add_argument("--cb", action="store_true", help="run cb scraper", default=False) - parser.add_argument("--slumber", type=int, help="how long the demon sleeps", default=60) + parser.add_argument("--name", type=str, nargs="+", + help="url to scrape") + parser.add_argument("--dbg", action="store_true", + help="debug", default=False) + parser.add_argument("--demon", action="store_true", + help="run as daemon", default=False) + parser.add_argument("--manga", action="store_true", + help="run manga scraper", default=False) + parser.add_argument("--cb", action="store_true", + help="run cb scraper", default=False) + parser.add_argument("--slumber", type=int, + help="how long the demon sleeps", default=60) self.args = parser.parse_args() @@ -41,7 +49,7 @@ def mrg(url): for elem in search: if elem.string == "Last Broadcast:": Up_Time = elem.next_sibling.next_sibling.string - #print(elem.next_sibling.next_sibling) + # print(elem.next_sibling.next_sibling) if Up_Time.find("minutes") != -1: return True @@ -55,16 +63,17 @@ def run_cb_scrape(): print("mg ", end="") vocalize(os.path.expanduser("~") + "/scripts/mila/mgup.ogg") if mrg(url["2"]): - print ("obk ", end="") + print("obk ", end="") vocalize(os.path.expanduser("~") + "/scripts/mila/obkup.ogg") if mrg(url["5"]): - print ("ls ", end="") + print("ls ", end="") vocalize(os.path.expanduser("~") + "/scripts/mila/lisaup.ogg") def manga_scrape(): urls = json.load(open("/home/bloodstalker/extra/kaminokumo/manga.json")) requests.packages.urllib3.disable_warnings() + result = str() for name, url in urls.items(): resp = requests.get(url, verify=False) soup = BeautifulSoup(resp.text, "lxml") @@ -72,12 +81,16 @@ def manga_scrape(): re_res = [] for thing in search: re_res.append(re.findall("Chapter [0-9]*[\.[0-9]*]?", thing.text)) - print(name,"-->", re_res[0][0]) + # print(name, "-->", re_res[0][0]) + result += name + "-->" + re_res[0][0] + "\n" + print(result) def vocalize(sound): subprocess.call([os.path.expanduser("~")+"/scripts/voice.sh", sound]) ############################################################################### + + def premain(argparser): signal.signal(signal.SIGINT, SigHandler_SIGINT) if argparser.args.cb: @@ -95,7 +108,8 @@ def main(): premain(argparser) except Exception as e: print(e.__doc__) - if e.message: print(e.message) + if e.message: + print(e.message) variables = globals().copy() variables.update(locals()) shell = code.InteractiveConsole(variables) @@ -103,5 +117,6 @@ def main(): else: premain(argparser) + if __name__ == "__main__": main() -- cgit v1.2.3