예제 #1
0
def get_sentence(word, imdb_id):
    """
    Получить предложение для слова
    Args:
        word (:obj:`str`): слово
        imdb_id (:obj:`int`): id фильма на сайте *imdb.com*
    Returns:
        sentence (:obj:`str`): предложение для слова
    """
    OP = OpenSubtitles()
    logger.info("Getting sentence, OpenSubtitles token %s" % OP.login())
    postgre = DataBase()
    sentence = postgre.GetSentence(word, imdb_id)
    if sentence:
        return sentence
    subtitle_id = postgre.GetSubtitleID(imdb_id)
    logger.info("subtitle id - %s" % subtitle_id)
    FileData = (OP.download_subtitles([subtitle_id]))
    sentence = search_sentence(FileData['data'][0]['data'], word)
    OP.logout()
    if sentence:
        postgre.AddSentence(word, imdb_id, sentence)
        return sentence
    else:
        return None