Python // База данных голоса
Вдохновленный постом от @gmaster я решил полазить по базе данных Голоса от arcange
Думаю данная тема интересна всем, кто изучает Python, поэтому советую ознакомиться с постом по ссылке выше. Я же в свою очередь добавлю свои пять копеек.
Во-первых библиотеки pymssql и sqlalchemy необходимые для доступа к базе, просто так под pip ставиться не захотели, просили установить компилятор Visual C++, чтобы что-то там закомпилировать. Не так давно @ksantoprotein писал в своём блоге как он мучался с подобной проблемой устанавливая piston, и я, как очень ленивый программист решил пойти по другому пути.
Есть готовые неофициальные сборки модулей для Python, которые выполнены в whl формате и избавлены от большинства глюков с перекомпиляцией.
Я просто установил wheel командой
pip install wheel
а потом скачал два whl пакета для моей версии винды и питона:
http://www.lfd.uci.edu/~gohlke/pythonlibs/#pymssql
http://www.lfd.uci.edu/~gohlke/pythonlibs/#sqlalchemy
После скачивания не вздумайте их переименовывать. Просто положите их куда нибудь в корень диска и дайте команду вроде этой, заменив имя файла на имена скачанных whl модулей:
pip install D:\SQLAlchemy-1.1.14-cp36-cp36m-win_amd64.whl
Теперь всё установится без проблем.
Далее можно изучить структуру базы голоса, скачав вот эту уже настроенную программку, которую мне посоветовали в телеграме.
http://pythono.ru/book/12/hsql.zip
Ну и напоследок, когда вы наиграетесь с составлением SQL запросов из этой программы, можете наконец попробовать получить какую-то инфу из базы через Python. Например получить все посты какого-то пользователя и вывести их в виде html файла, который сразу же и открыть в браузере.
Исходник: http://pythono.ru/book/12/3.rar
Или получить список пользователей у которых больше всего постов:
Исходник: http://pythono.ru/book/12/2.rar
Или самая большая репутация:
Исходник: http://pythono.ru/book/12/1.rar
Играть с базой можно бесконечно, например сделать скрипт, который получает 10 последних комментариев определённого пользователя, или какой пост данного пользователя принес ему наибольшее количество апвоутов. Можно запилить свою программу для сбора статистики и понастроить красивых графиков ))