diff options
| author | msglm <msglm@techchud.xyz> | 2023-01-11 20:51:07 -0600 | 
|---|---|---|
| committer | msglm <msglm@techchud.xyz> | 2023-01-11 20:51:07 -0600 | 
| commit | 72a3a121b4f3810df1935a25093bd213a43be5e2 (patch) | |
| tree | 7bc513b01970bd15624ca75caaef1f6af4e878b8 /stealIfunny | |
| parent | 78259f406ad2b3178f0d707c0f035c2eeec1e9b5 (diff) | |
| download | comedyGenerator-72a3a121b4f3810df1935a25093bd213a43be5e2.tar.gz comedyGenerator-72a3a121b4f3810df1935a25093bd213a43be5e2.tar.bz2 comedyGenerator-72a3a121b4f3810df1935a25093bd213a43be5e2.zip | |
legal BS
Diffstat (limited to 'stealIfunny')
| -rwxr-xr-x | stealIfunny | 105 | 
1 files changed, 0 insertions, 105 deletions
| diff --git a/stealIfunny b/stealIfunny deleted file mode 100755 index 0b21710..0000000 --- a/stealIfunny +++ /dev/null @@ -1,105 +0,0 @@ -#!/usr/bin/python3 -import requests -import urllib.request -import sys -import os -import argparse -import time - -parser = argparse.ArgumentParser(add_help=True) - -parser.add_argument('-js','-JS',"--Javascript",'--javascript', -                    default=False, -                    action='store_true', -                    dest='usingJavascript', -                    help='Enables the user of a webdriver to scrape funnies' -                    ) - -parser.add_argument('--amount','-a', -                    default=0, -                    dest='amount', -                    action="store", -                    help="the amount of funnies you'd like to download per tag", -                    type=int -                    ) - -parser.add_argument('tags', -                    nargs='+', -                    type=str, -                    help='Provides tags to be check for funny downloading' -                    ) - -args = parser.parse_args() - -if not args.usingJavascript: -    from bs4 import BeautifulSoup -    print("using html mode...") -    for tags in args.tags: -        URL = requests.get('https://ifunny.co/tags/' + tags + '?filter=video') -        webpage = BeautifulSoup(URL.content, 'html.parser') -        videos = webpage.findAll('video') -        epoch = len([item for item in os.listdir('/home/'+ os.environ['USER'] + '/Videos/unsorted/')]) -        if args.amount > 0: -            videos = video[:arg.amount] -        for video in videos: -            epoch = epoch + 1 -            print(video['data-src']) -            urllib.request.urlretrieve(video['data-src'], '/home/' + os.environ['USER'] + '/Videos/unsorted/' + str(epoch) + '.mp4')  -elif args.usingJavascript: -    from selenium import webdriver -    print("using JS mode...") -     -    try: -        from selenium.webdriver.firefox.options import Options -        firefox_options = Options() -        firefox_options.add_argument("--headless") -        driver = webdriver.Firefox(options=firefox_options) - -    except: -            try: -                from selenium.webdriver.chrome.options import Options -                chrome_options = Options() -                chrome_options.add_argument("--headless") -                driver = webdriver.Chrome(options=chrome_options) -            except: -                    try: -                        from selenium.webdriver.firefox.options import Options -                        firefox_options = Options() -                        firefox_options.add_argument("--headless") -                        driver = webdriver.Firefox(executable_path=GeckoDriverManager().install(), options=firefox_options) -                    except: -                            try: -                                from selenium.webdriver.chrome.options import Options -                                chrome_options = Options() -                                chrome_options.add_argument("--headless") -                                driver = webdriver.Chrome(ChromeDriverManager(chrome_type=ChromeType.CHROMIUM).install(), options=chrome_options) -                            except: -                                    print("Could not find webdriver!") -                                    print("You'll have to manually install a webdriver to your path") -                                    print("If you are using GNU/Linux, it is likely that you can install from your standard repos. Debian labels their chromium driver chromium-driver. If you wish to use an ungoogled version of chromium (as to reduce possiblity of spying), you can find a link to that here: https://github.com/Eloston/ungoogled-chromium#downloads. On Debian (or debian likes such as Ubuntu or Devuan), you may then run apt install ungoogled-chromium-driver and this will no longer fail.") -                                    sys.exit() -    for tags in args.tags: -        driver.get('https://ifunny.co/tags/' + tags + '?filter=video') -        if args.amount > 0: -            isTimesScrolled = 0 -            oughtTimeScrolled = (args.amount/10) + 1 -            while isTimesScrolled < int(oughtTimeScrolled): -                driver.execute_script("window.scrollTo(0, document.body.scrollHeight);") -                isTimesScrolled = isTimesScrolled + 1 -                time.sleep(3) -        videos = driver.find_elements_by_tag_name("video") -        if args.amount > 0: -            videos = videos[:args.amount] -        epoch = len([item for item in os.listdir('/home/'+ os.environ['USER'] + '/Videos/unsorted/')]) -        for video in videos: -            print("saving " + video.get_attribute("data-src") + " as " + '/home/' + os.environ['USER'] + '/Videos/unsorted/' + str(epoch) + '.mp4') -            urllib.request.urlretrieve(video.get_attribute("data-src"), '/home/' + os.environ['USER'] + '/Videos/unsorted/' + str(epoch) + '.mp4')  -        driver.quit() - - -else: -    print("Neither Javascript or HTML was given!") -    sys.exit(1) -     - - | 
