#python-3.x #google-trends
#python-3.x #google-trends
Вопрос:
Мне нужно получить данные Google Trends из списка ключевых слов. Я привык анализировать данные с помощью STATA, и это мой первый раз, когда я использую Python (через project jupiter notebook). Я не могу сделать это через STATA, так как у него нет пакета для загрузки данных Google trends. Похоже, что Python это делает через «py trends», Вот мои коды
pip install pytrends
import pandas as pd
import pytrends
from pytrends.request import TrendReq
pytrend = TrendReq()
KEYWORDS['GYMM','GYNE','GYNX']
KEYWORDS_CODES=[pytrend.suggestions(keyword=i)[0] for i in KEYWORDS]
Вот у меня такая проблема
«—————————————————————————
Обратная трассировка IndexError (последний последний вызов)
в
—-> 1 KEYWORDS_CODES=[py trend.suggestions(ключевое слово=i)[0] для i в КЛЮЧЕВЫХ СЛОВАХ]
в (.0) —-> 1 KEYWORDS_CODES=[py trend.suggestions(ключевое слово= i) [0] для i в КЛЮЧЕВЫХ СЛОВАХ]
Ошибка IndexError: индекс списка вне диапазона»
Я запускаю коды один за другим, и это сообщение появляется при вводе последней строки кодов. Честно говоря, я нашел этот код в веб-руководстве для тех, кто заинтересован в получении данных Google Trends (к сожалению, поскольку у меня нет знаний о Python, я не могу создать свой собственный код). На самом деле мои ключевые слова — копировать и вставлять из текстового файла (здесь я написал несколько из них, тем не менее, их тысячи)
Не были бы вы так добры дать мне несколько предложений?
Спасибо за ваше время.
Ответ №1:
Результатом pytrend.suggestions(keyword='GYNX')
(третий элемент в вашем списке) является пустой список []
, поэтому индексирование его через [0]
возвращает IndexError
Комментарии:
1. Спасибо за ваш любезный ответ. Итак, должен ли я указывать количество ключевых слов внутри [], а не [0]?
2. Привет, Марко, я думаю, вам следует просто использовать
pytrend.suggestions(keyword=i)
без индекса, чтобы, если нет ошибки, когда функция не возвращает ключевые слова3. Спасибо за ваше предложение. Я удалил его, и теперь он не показывает никакой ошибки. Тем не менее, в левой части команды line у меня есть это обозначение [*], Насколько я знаю, для jupiter notebook это означает, что выполняется код, но не завершен. Теперь, когда прошел один час, вы думаете, что это может быть для моих многих ключевых слов, которые я должен запустить поиск?
4. Да, я думаю, это означает, что код все еще выполняется, другим признаком может быть то, что в адресной строке есть символ таймера яйца