Slack bot for posting dank memes from Reddit
Project description
# Dankbot
[](https://circleci.com/gh/DankCity/dankbot/tree/master) [](https://coveralls.io/github/DankCity/dankbot?branch=master) [](https://landscape.io/github/DankCity/dankbot/master) [](http://waffle.io/DankCity/dankbot)
A Slack Bot that scrapes memes from subreddits and posts them to slack
## Steps to run
### Clone into directory
```
cd /opt
sudo mkdir dankbot && sudo chown <user>:<user> dankbot
git clone git@github.com:DankCity/dankbot.git
```
### Setup INI file
```
cd /opt/dankbot
cp dankbot/dankbot.ini.sample dankbot/dankbot.ini
```
Edit the INI file to fill in the missing token, username, and password fields:
```
(.venv35)➜ dankbot git:(master) ✗ cat dankbot/dankbot.ini.sample
[slack]
token: <put here>
channel: #random
[reddit]
subreddits: dankmemes, fishpost, me_irl, 4chan
[imgur]
client_id: <client_id>
client_secret: <client Secret>
[mysql]
database: <db>
username: <username>
password: <password>
[misc]
include_nsfw: <boolean>
max_memes: 3
```
### Create and activate a virtual environment
```
cd /opt/dankbot
virtualenv --python=`which python3` env
source env/bin/activate
```
### Install the python package
```
cd /opt/dankbot
source env/bin/activate
pip install -e .
```
### Create logging folder
```
sudo mkdir /var/log/dankbot
sudo chown <user> /var/log/dankbot
```
### Add an entry to your crontab:
Edit the crontab with your favorite editor
```
sudo vi /etc/crontab
```
And add an entry like so:
```
# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the 'crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
# m h dom mon dow usernamecommand
*/5 09-17 * * 1-5 root cd /opt/dankbot && source env/bin/activate && dankbot .
```
This will run dankbot once every 5 minutes, Monday to Friday, between 9 AM and
5 PM CST
[](https://circleci.com/gh/DankCity/dankbot/tree/master) [](https://coveralls.io/github/DankCity/dankbot?branch=master) [](https://landscape.io/github/DankCity/dankbot/master) [](http://waffle.io/DankCity/dankbot)
A Slack Bot that scrapes memes from subreddits and posts them to slack
## Steps to run
### Clone into directory
```
cd /opt
sudo mkdir dankbot && sudo chown <user>:<user> dankbot
git clone git@github.com:DankCity/dankbot.git
```
### Setup INI file
```
cd /opt/dankbot
cp dankbot/dankbot.ini.sample dankbot/dankbot.ini
```
Edit the INI file to fill in the missing token, username, and password fields:
```
(.venv35)➜ dankbot git:(master) ✗ cat dankbot/dankbot.ini.sample
[slack]
token: <put here>
channel: #random
[reddit]
subreddits: dankmemes, fishpost, me_irl, 4chan
[imgur]
client_id: <client_id>
client_secret: <client Secret>
[mysql]
database: <db>
username: <username>
password: <password>
[misc]
include_nsfw: <boolean>
max_memes: 3
```
### Create and activate a virtual environment
```
cd /opt/dankbot
virtualenv --python=`which python3` env
source env/bin/activate
```
### Install the python package
```
cd /opt/dankbot
source env/bin/activate
pip install -e .
```
### Create logging folder
```
sudo mkdir /var/log/dankbot
sudo chown <user> /var/log/dankbot
```
### Add an entry to your crontab:
Edit the crontab with your favorite editor
```
sudo vi /etc/crontab
```
And add an entry like so:
```
# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the 'crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
# m h dom mon dow usernamecommand
*/5 09-17 * * 1-5 root cd /opt/dankbot && source env/bin/activate && dankbot .
```
This will run dankbot once every 5 minutes, Monday to Friday, between 9 AM and
5 PM CST
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
dankbot-0.0.3.tar.gz
(26.1 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
dankbot-0.0.3-py3-none-any.whl
(13.9 kB
view details)
File details
Details for the file dankbot-0.0.3.tar.gz.
File metadata
- Download URL: dankbot-0.0.3.tar.gz
- Upload date:
- Size: 26.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
96967823aae83e879ed4f70cb2acb3341ed9abc6920d80d4593d7eb9e0d1cc25
|
|
| MD5 |
6f63bbb5c8edc0332b8c6589d9996acf
|
|
| BLAKE2b-256 |
0bcc30a5c7714a7f5054f18778847885946b71b603f72f9addfb2c2368d626dd
|
File details
Details for the file dankbot-0.0.3-py3-none-any.whl.
File metadata
- Download URL: dankbot-0.0.3-py3-none-any.whl
- Upload date:
- Size: 13.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8a0d921a53afdb81c2bb70a3125c5d3ef61f55ff370eb4630513ef42333054c6
|
|
| MD5 |
9a4fabd28c4f5a0b6a3df18566bafc36
|
|
| BLAKE2b-256 |
b6a19eb44a5e40af54cf0539405ea61d28e598b7729f02c030973ee9682d7651
|