Попытка написать программу, которая очищает информацию о фильме от Google - PullRequest
0 голосов
/ 06 мая 2019

Я пытаюсь написать программу для моих друзей, чтобы отслеживать фильмы, которые мы смотрели, и список фильмов, которые мы хотели посмотреть.

Я пытаюсь написать на Python программу, которая берет название фильма и добавляет этот фильм в список в excel, затем ищет в Google информацию об этом фильме из различных источников и добавляет ее вдокумент Excel (Например, если я набираю «Назад в будущее» в Python, он добавляет это в первый столбец моего документа Excel, а затем ищет в Google рейтинги «Назад в будущее» и извлекает их из IMDB, Rotten Tomatoes и Metacritic изокно, которое Google отображает на стороне поиска со всей информацией о фильме.)

Я написал код для ввода названия фильма в Excel, но совершенно не знаю, с чего начать, чтобы получить оценки фильмов изGoogle, любая помощь будет принята с благодарностью.

ОБНОВЛЕНИЕ: удалось выяснить, вот рабочий код, если кто-то заинтересован:

import openpyxl
from imdb import IMDb
from omdbapi.movie_search import GetMovie


wb = openpyxl.load_workbook('MovieList.xlsx')
ws = wb.active

ia = IMDb()

while True:
    userinput = input('Please enter a movie title: ')
    if(userinput == 'end it'):
        break;
    s_result = ia.search_movie(userinput)
    movie = s_result[0]
    ia.update(movie)
    maxrow = ws.max_row +1
    ws.cell(column=1, row=maxrow, value=movie['long imdb canonical title'])

    genre = ", ".join(movie['genre'])

    movie = GetMovie(title=userinput, api_key='API')
    OMDBRATINGS = movie.get_data('Ratings', 'Runtime')
    #info = OMDBRATINGS.values()
    #print(OMDBRATINGS['Ratings'][0]['Value'])

    ws.cell(column=2, row=maxrow, value=genre)
    ws.cell(column = 3, row = maxrow, value = OMDBRATINGS['Ratings'][0]['Value'])
    ws.cell(column=5, row=maxrow, value=OMDBRATINGS['Ratings'][1]['Value'])
    ws.cell(column=4, row=maxrow, value=OMDBRATINGS['Ratings'][2]['Value'])
    ws.cell(column=6, row=maxrow, value=OMDBRATINGS['Runtime'])

    wb.save('MovieList.xlsx')

1 Ответ

2 голосов
/ 06 мая 2019

Прежде всего, я бы посоветовал против удаления чего-либо из Google (или любой другой поисковой платформы в этом отношении). Скорее всего, это приведет к тому, что ваш IP будет внесен в черный список (см. Еще одну публикацию стекового потока ( is-it-ok-to-ok-to-scrape-data-from-google-results ). Если вы склонны двигаться вперед, вам следует подумать duckduckgo.com как альтернатива.

При этом я сначала попробую OMDB Api с использованием библиотеки requests python. У них есть довольно полная база данных названий фильмов, которые могут удовлетворить ваши требования.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...