Форум-api [из Есть здесь программисты-самоучки]

yroslavasako

Это всё надо scrapy тянуть, или у форума есть API?

SCIF32

api никакого нет, но обычно это никого не останавливало ;)

YUAL

 

^jsonapi/$ [name='index']
^jsonapi/forum/$ [name='forum']
^jsonapi/login/$ [name='login']
^jsonapi/check/$ [name='check']
^jsonapi/gcm/add/$ [name='gcm_add']
^jsonapi/gcm/del/$ [name='gcm_del']
^jsonapi/forum/(?P<b_number>\d+)/$ [name='showflat']
^jsonapi/forum/(?P<bo_keyword>Alt\..+)/$ [name='altlastpost']
^jsonapi/forum/private_threads/$ [name='ptlastpost']
^jsonapi/forum/(?P<bo_keyword>.+)/$ [name='lastpost']

Ещё я делал api. rest-json как раз на питоне. но оно счас остановлено, но есть на гитхабе. Дамп базы с пользователями и сообщениями восттановленных из публичного бэкапа могу выложить опять.

Dasar

что такое gcm?

YUAL

Спроси у катобра. Ну или скачай то приложение что он сделал и посмотри траффик.

Dasar

Спроси у катобра. Ну или скачай то приложение что он сделал и посмотри траффик.
gcm - это приблуда для отправки push-сообщений через гугловые сервера на android. (из поиска по форуму).
Предыдущее обсуждение:

Описание технологии: http://developer.android.com/google/gcm/index.html
Без гугловой проприетарной части имхо push либо не сделаешь в принципе, либо будет поделка, которую без огромных ресурсов не отладить. Про готовые альтернативы я не слышал, зато надстроек, существенно упрощающих использование gcm полно.
Это если хочется именно такого поведения , как у push. Тут по моему разумению 2 важных момента:
- push приходят даже если приложение не запущено
- каким-то образом gcm решает проблему с транспортом и умеет доставлять на физическое устройство по некоему RegistrationID (хз, у телефона статического ip или адреса нет, возможно там какой-то аналог dyndns запилен ну или они задействовали свою непубличную систему слежения за устройствами)

YUAL

о. так это рулез. жалко документации к апи никакой нет.
P.S. Оно таки gcm а не gsm.

stat2843915

да, это google cloud messaging

istran

Может я туплю, но не мог бы ты объяснить, как этим пользоваться?

Dasar

- список разделов
- проверить авторизацию
- список тредов
- сообщения в треде
Все ссылки выше - рабочие.

zorin29

ttps://forumbgz.ru/jsonapi/forum/development/ - список тредов
Мне возвращает пустой список, завернутый в валидный JSON.

Dasar

Мне возвращает пустой список, завернутый в валидный JSON.
Правильная ссылка такая:

agaaaa

А репозитория на гитхабе для ваших поделок нет? Может заведём?

YUAL

тут так не принято

istran

Спасибо, понял.
Еще несколько вопросов:
Как пользоваться методом login?
Есть ли возможность авторизации по какому-нибудь ключу, а не по печенькам?
Что делает метод index?
Есть ли методы для чтения приватов?
Есть ли методы для отправки постов и приватов?

YUAL

Все методы что есть уже написаны в моём сообщении.
Ридонли пока что. И кажется опять надолго. Катобр начал пилить но забил.
Есть вот такое апи (я разминки ради, чтобы освежить навыки программирования набросал)
http://github.com/mr-tron/forumlocal-json-api
Можно дорабатывать, но оно строится на парсинге html форума. Зато есть ответы и голосования.
Вот две темы:
- мое апи.
- катобровское.

stat2843915

Катобр начал пилить но забил.
ты давно записался в пиздоболы?

YUAL

Ок. Не забил. Просто внешне так выглядит. Может поделишься последней версией тогда?

stat2843915

последней версией чего? api? или приложения?
я приглашал в альте людей поучаствовать в разработке или хотя бы помочь, но что-то не было желающих
а показывать промежуточные результаты не вижу смысла, если что-то получится доделать, тогда и покажу

borec

Я могу поучаствовать - какие технологии?

carusya

Похоже, тему в альте увидело три с половиной человека, как всегда. Надо было кросс в одной из основных веток сделать (или был? я вот просмотрел)

YUAL

я приглашал в альте людей поучаствовать в разработке или хотя бы помочь, но что-то не было желающих
А как помощь должна была выглядеть кроме как тестирование?
Выкладывай сырцы на гитлаб/гитхаб. Тогда можно будет формировать список задач (баги, фичареквесты и т.п.). Люди смогут брать и решать конкретные задачи. А помогать с разработкой чёрного ящика непонятно как.
В принципе джанго апи тоже можно выложить, если ты напишешь model.py или дашь mysqldump -d forum_db_name, то я готов помочь с разработкой api и наверняка не я один.

Kira

^jsonapi/gcm/add/$ [name='gcm_add']
а вот тут по параметрам json можно подробностей?

istran

mysqldump -d forum_db_name
Может тебе еще ключ от квартиры, где деньги лежат?

YUAL

Эээээ. Ну я и так в принципе представляю себе схему базы форума. Можно даже наверное отсюда вытащить схему некоторых базовых таблиц, но она будет сильно отличаться от текущей форумской схемы за счёт того что форум неоднократно дописывали.
UPD: Или ты просто не знаешь что делает ключ -d?

istran

Сорри, сначала не разобрался, что делает ключ -d.

nas1234

отсюда
там IPB а тут UBBThreads

zya369

Ну я и так в принципе представляю себе схему базы форума.

ха. ха. ха.

YUAL

Ну как-бе не рокет сайнс. Не очень представляю как именно хранятся оценки - можно реализовать разными способами. а в остальном то что?

zya369

мне кажется, что картинка в твоей голове сильно отличается от реальности
вот, скажем, сколько, по-твоему
1) всего таблиц (примерно)
2) сколько таблиц (и строк в каждой из них) нужно прочитать, чтобы узнать всю инфу об одном посте
3) сколько колонок в вышеуказанных таблицах
ЗЫ я, если что, не знаю ответов

YUAL

Количество таблиц сложно точно угадать. Результат может очень отличаться за счёт всяких служебных таблиц, many-to-many таблиц и т.п. но на вскидку 5-6 десятков.
Не очень понимаю на счёт "вся инфа об одном посте". вот если например в таблице постов есть столбец о принадлежности к определёному разделу, то надо делать джойн с той таблицей, чтоб узнать имя раздела или это не входит во всю инфу?
Ну на вскидку - скорее всего достаточно двух-трёх таблиц - список постов (порядка 20 столбцов) и таблица с оценками (скорее всего 3-4 столбца) если к посту привязана голосовалка то нужна ещё таблица голосовалок (пяток столбцов). если список слоев хранится в базе, то надо ещё таблицу со списком слоёв, но подозреваю, что захардкожен.
Это всё конечно пальцем в небо.
Оставить комментарий
Имя или ник:
Комментарий: