Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

TweetPoster Build Status

TweetPoster is a reddit bot that posts the contents of the submitted tweet (and any parents) as a comment on the submission itself, as well as rehosts any images.
It is a replacement for the now-defunct /u/tweet_poster.

Adding an image host

All image hosts must subclass TweetPoster.rehost.ImageHost, this allows them to be automatically picked up when it comes time to rehost an image.

Each image host has two prerequisites:

  1. a url_re attribute which will be used to match against a url
  2. an extract method that recieves a url

extract should return an url (obtained using ImageHost.rehost) or None

An example can be found below, and further examples can be found in

class Instagram(ImageHost):

    url_re = 'https?://\w+/'

    def extract(self, url):
            r = requests.get(url)
        except requests.exceptions.RequestException:
            return None

        soup = BeautifulSoup(r.content)
        photo = soup.find("img", class_="photo")['src']
        return self.rehost(photo)