예제 #1
0
import requests
from tabulate import tabulate

from corji.data_sources import google_spreadsheets
from corji.logging import Logger
from corji.settings import Config


logger = Logger(Config.LOGGER_NAME,
                Config.LOG_PATH,
                Config.LOG_NAME)
SPREADSHEET_URL = Config.SPREADSHEET_URL

if __name__ == "__main__":
    logger.debug("START: Spreadsheet URL defined: %s", SPREADSHEET_URL)
    google_spreadsheets.load(SPREADSHEET_URL)

    corgi_counter = Counter()
    keys = google_spreadsheets.keys(include_empty_keys=True)
    for emoji in keys:
        corgis = google_spreadsheets.get_all(emoji)
        for corgi in corgis:
            try:
                requests.get(corgi)
            except:
                print("FAILURE: {}".format(corgi))
        corgi_counter[len(corgis)] += 1

    print(tabulate(corgi_counter.items(),
          headers=["# of URLs", "Count"],
          tablefmt="psql"))
예제 #2
0
파일: api.py 프로젝트: jmduke/corji
import requests

from corji.data_sources import (
    google_spreadsheets,
    piles,
    s3
)
from corji.exceptions import CorgiNotFoundException
import corji.settings as settings
from corji.utils.emoji import (
    emoji_contains_skin_tone,
    text_contains_emoji
)

logger = logging.getLogger(settings.Config.LOGGER_NAME)
google_spreadsheets.load(settings.Config.SPREADSHEET_URL)
piles.load(settings.Config.PILES_URL)
if settings.Config.REMOTE_CACHE_RETRIEVE:
    s3.load()


class CorgiResource(Resource):
    def get(self, emoji=None):
        """Returns an emoji associated with the given emoji.
        If no emoji is supplied, a random corji is returned."""

        if not emoji:
            emoji = random.choice(google_spreadsheets.keys())

        corgi_urls = []