Skip to main content

Crunchyroll Guest Pass Publisher for Reddit

Project description

CrunchyBot

Description:

This is a simple bot/script I made to publish my CrunchyRoll Guest Passes to Reddit. It uses Selenium and Chromedriver to extract the valid guest passes from CrunchyRoll and PRAW to publish it /r/Crunchyroll's weekly Megathread. This is not a bot made to run indefinitely; however, it can be altered to do so if one so desired. It was intended for use in conjunction with a task scheduler/cronjob to check once every month (or four if you wish to publish them in sets before guest passes expire) for new guest passes.

Changes:

Due to how the PRAW library has changed, all users now must create a reddit script app. As such, the data file now must include additional data. See below for a quick guide on how to set this up.

Setting Up Reddit Account:

  1. Log on to the bot account.
  2. Go the bot account's preferences from the upper-right corner.
  3. Click the apps tab.
  4. Click the create another app. - The button test may appear differently if you have no apps setup.
  5. In the prompts, ensure that the script radio button is toggled and redirected uri is is set to http://localhost:8080. The other fields can be filled with whatever you want.
  6. Click create app button when done.
  7. You should now see the app created. Right below the name and below personal use script will be your client_id. Within the box, to the right of the word secret, is your client_secret.

Install:

pip install crunchy-bot

Setup:

Run crunchy init to generate config file:

{
  "crunchy_username": "crunchy_user",
  "crunchy_password": "crunchy_pass",
  "reddit_client_id": "client_id",
  "reddit_client_secret": "client_secret",
  "reddit_user_agent": "CrunchyBot:v4.0.0 (hosted by /u/{YOUR_USERNAME})",
  "reddit_username": "reddit_user",
  "reddit_password": "reddit_pass",
  "log_dir": "/tmp/crunchybot/logs"
}

or save this to ~/.crunchybot.

Execute crunchy publish [--config path/to/.crunchybot] [--debug/-d] to start scrapping and publishing.

Requirement:

  • Selenium
  • Chrome
  • PRAW 6.1.0+
  • Python 3.5+

Prerequisites:

You will need to have Chrome installed on your system at its default installation path. This is due to the chromedriver working with your Chrome installation to retrieve Crunchyroll Guest Pass.

Note As of 4.0.0, chromedriver will not be provided. Please refer to link on setting up

If you would rather use bring in chromedriver yourself, the version of chromedriver that has been verified to work is 2.45. Replace the chromedriver under the bin/ directory.

With Pipenv

Assuming you have pipenv installed on your system, run the following within the repo:

$ pipenv --three

This will setup a virtual environment for Crunchybot to work in without interferring your other python projects.

With pipenv initialized, run:

$ pipenv install

This will use the Pipfile and Pipfile.lock to fetch and verify dependencies.

Without Pipenv

Install PRAW and Selenium by running the following command:

 $ pip install -r requirements.txt

The other requirements are included in the bin directory of the project.

How to Use:

  1. Clone the project
       git clone https://github.com/lamdaV/CrunchyBot.git
    
  2. Navigate to where you clone the repository
        cd CrunchyBot
    
  3. Update the templated botData.json with your information.
  4. Run
        pipenv run python src/CrunchyBot.py [--debug/-d] /path/to/botData.json
        // or
        python src/CrunchyBot.py [--debug/-d] /path/to/botData.json
    

Automating:

Add the Python script to the Windows Task Scheduler with monthly frequency. Here is a link to setup the Task Scheduler.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

crunchy_bot-4.0.3.tar.gz (10.4 kB view details)

Uploaded Source

Built Distribution

crunchy_bot-4.0.3-py3-none-any.whl (12.5 kB view details)

Uploaded Python 3

File details

Details for the file crunchy_bot-4.0.3.tar.gz.

File metadata

  • Download URL: crunchy_bot-4.0.3.tar.gz
  • Upload date:
  • Size: 10.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.8.0 requests-toolbelt/0.8.0 tqdm/4.23.4 CPython/3.7.3

File hashes

Hashes for crunchy_bot-4.0.3.tar.gz
Algorithm Hash digest
SHA256 cb83c03b6caedea8c057e1d7209b5026257b18e1afa1b4c8f09c66005f2675f8
MD5 48b94a1f30a822a1f1bc6663f5941acb
BLAKE2b-256 cb30d7caa2352b734786ac02bfeb0b8e8b3e212d0fa99539a15673a0b67a0581

See more details on using hashes here.

Provenance

File details

Details for the file crunchy_bot-4.0.3-py3-none-any.whl.

File metadata

  • Download URL: crunchy_bot-4.0.3-py3-none-any.whl
  • Upload date:
  • Size: 12.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.8.0 requests-toolbelt/0.8.0 tqdm/4.23.4 CPython/3.7.3

File hashes

Hashes for crunchy_bot-4.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 da20eba7bd224f4acd606c719963e32bf6c14bf1179932068a761f11810abc6e
MD5 99ddcfc113752b61052b9e4ba26c63f1
BLAKE2b-256 73ba3a48d29c56bef5d65d7e5b22493fbbdb2a3d5406405198165482a78ec388

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page