Облако тегов хранилища данных Google App Engine с Python

У нас есть некоторые неструктурированные текстовые данные в нашем хранилище данных движка приложения. Я хотел создать единое облако тегов одного свойства для подмножества объектов хранилища данных. Оглядевшись вокруг, я не вижу ни одного фреймворка, который позволил бы мне сделать это, не написав его самостоятельно.

То, как я имел в виду, было:

  • Напишите функцию карты (как в функции уменьшения карты), чтобы просмотреть каждый объект определенного типа в хранилище данных,
  • Разбить текстовую строку на слова
  • Для каждого слова увеличивается счетчик
  • Используйте окончательные подсчеты для создания облака тегов с помощью стороннего программного обеспечения (в автономном режиме - приветствуются любые предложения)

Поскольку я никогда не делал этого раньше, я бродил, во-первых, есть ли какая-то структура, которая делает это для меня (пожалуйста), если нет, то правильно ли я подхожу к этому. то есть, пожалуйста, не стесняйтесь указывать на зияющие пробелы в плане.


person probably at the beach    schedule 07.03.2011    source источник


Ответы (1)


Фид TagCloud и PyTagCloud — две возможности.

  • Вам может подойти гаджет Feed TagCloud Generator для Google App Engine. К сожалению, это недокументировано. К счастью, это довольно просто, хотя я не уверен, насколько хорошо он подходит для ваших нужд.

    Он работает с фидом и кажется несколько гибким, поэтому, если у вас есть фид вашего сайта, интегрировать его не составит труда, хотя вся обработка будет онлайн.

  • Также стоит обратить внимание на PyTagCloud. Вы сможете выполнять обработку в автономном режиме, и это создаст довольно красивые облака.

    Все, что вам нужно сделать, чтобы это заработало, это экспортировать хранилище данных; подсчет и разделение будут сделаны за вас, так как PyTagCloud может работать с текстовыми файлами. Следуйте инструкциям в документации App Engine по загрузке и скачиванию данных. покажет вам, как экспортировать хранилище данных на ваш локальный компьютер. Вы захотите написать «Класс экспортера» и заставить PyTagCloud работать с выходными данными.


Если вы решите создать свой собственный, вы, вероятно, захотите пропустить онлайн-обработку и использовать автономный метод Загрузка и скачивание данных выше, если только вам не требуется динамически обновляемое облако. Итерация по всему хранилищу данных и онлайн-подсчет — самая раздражающая и дорогостоящая часть задачи. Это имеет смысл делать только в том случае, если вам нужно динамическое облако тегов. Как и выше, я бы рекомендовал написать «Класс экспортера» и работать с ним локально.

person Ezra    schedule 07.03.2011