LINUX.ORG.RU

Написал себе небольшую проверялку уведомлений с ЛОРа

 ,


5

1

Ничего умного, просто логинится дергает notification-count.

Насколько часто дергать этот URL не будет мудачеством, учитывая что у меня комп включен постоянно? Можно раз в 30 сек?

maxcom

P.S. Вот такое сорц https://gist.github.com/7f652c4d69efab5bff2a

P.P.S. RSS не хочу, так как они обозначают прочитаным только то, что прочитали через ридер

★★★★★

Последнее исправление: vertexua (всего исправлений: 3)

Ещё одна уведомлялка для людей, у которых много свободного времени и нервов.

Deleted
()

Так как ЛОР защищен фильтром от ботов, то в принципе, пока тебя не забанит - можешь дергать.

Shaman007 ★★★★★
()
Ответ на: комментарий от Shaman007

Бот же залогинен мной и ничего не пишет. Опишит нормальный Usage Policy и будем следовать.

vertexua ★★★★★
() автор топика

когда будешь выкладывать сорцы под нормальной свободной лицензией, кастани меня. я так и не осилил себе сие чудо набыдлокодить.

funeralismatic ★★★
()
Ответ на: комментарий от funeralismatic

Если тебе хочется тоже поковырять, то вот https://gist.github.com/7f652c4d69efab5bff2a, но это такое, поделка. Суть в том что я хочу сделать с цветом и научить его формату i3bar. Там нужно JSON потоковый слать

vertexua ★★★★★
() автор топика
Ответ на: комментарий от Eddy_Em

В том то и дело, что неплохо бы выяснить этичную сторону вопроса. А то наставим тут такого всем ЛОРом и будем бомбить сервер, причем даже не пользуясь, а например оставив комп включеным

vertexua ★★★★★
() автор топика

Думаю стоит экспоненциальный таймаут запилить, чтобы детектировать активную дискуссию, но дохнуть если ничего не меняется долго

vertexua ★★★★★
() автор топика
Ответ на: комментарий от vertexua

Сейчас уже можно об "этичной стороне" не задумываться: ЛОР сидит за антиDDOSом, поэтому даже тупо если часто флудишь (да, у меня когда звездочка еще светилась, я иногда нарывался на антиботовую защиту), срабатывает эта хрень.

В общем, раз в 30 секунд будет нормально. А эта идиотская защита все-таки криво настроена! Ведь человек может набирать со скоростью 400 символов в минуту → за минуту можно запросто накромсать десяток коротких сообщений. А антиDDOS считает, что ты — бот, если так часто пишешь. Маразум.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Eddy_Em

Там вроде только на запись фильтр, а читать можно сколько угодно.

vertexua ★★★★★
() автор топика
Ответ на: комментарий от vertexua

не, JSON я не умею. я вообще не осилил слать и принимать данные. я даже юникс сокеты ниасилил. )=

funeralismatic ★★★
()
Ответ на: комментарий от vertexua

#!/usr/bin/python

мужык, за що?! ты шовенист? за что мне такие муки? почему на питоне? почему не на нормальном ЯП?

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

funeralismatic ★★★
()
Ответ на: комментарий от Eddy_Em

Если наш фильтр не дает тебе постить десяток коротких сообщений за минуту, то он настроен просто прекрасно.

Shaman007 ★★★★★
()
Ответ на: комментарий от funeralismatic

почему не на нормальном ЯП?

На нормальном, это на каком?

shrub ★★★★★
()
Ответ на: комментарий от funeralismatic

мужык, за що?! ты шовенист? за что мне такие муки? почему на питоне? почему не на нормальном ЯП?

потому что на питоне такие штуки пишутся на 4 строчки, не особо заморачиваясь... я уже скоро в веб ходить не буду, потому что у меня куча роботов всё приносит отовсюду...

odii
()
Ответ на: комментарий от Shaman007

Да, без проблем.

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

Sadler ★★★
()
Ответ на: комментарий от funeralismatic

Ну будет у меня один текстовик, с которым не надо возиться, компилять. Если ты не заметил, то это уведомлялка в трей, а не какой-то космический корабль.

Тут чтобы не компилять и борщевикам угодить максимум #!/usr/bin/runhaskell надо

vertexua ★★★★★
() автор топика
# start session

$ wget --keep-session-cookies --save-cookies /tmp/cookies1.txt  https://www.linux.org.ru/ -O - | grep csrf 

csrf = D3245+8gwXK0c91boExBfQ==

# login

$ wget --load-cookies /tmp/cookies1.txt --keep-session-cookies --save-cookies /tmp/cookies2.txt --post-data 'csrf=D3245%2B8gwXK0c91boExBfQ%3D%3D&nick=MyNickname&passwd=myP@ssw0rD' https://www.linux.org.ru//ajax_login_process -O -

{
  "username" : "MyNickname",
  "loggedIn" : true
}

$ wget --load-cookies /tmp/cookies2.txt https://www.linux.org.ru/tracker/ -O - | grep 'Уведомления'

<a href="notifications">Уведомления <span id="main_events_count"></span></a>
sdio ★★★★★
()
Ответ на: комментарий от Sadler

Были бы ЛОР-API человеческие, уже давно все было бы! А так слишком высокая нагрузка будет и на сервер, и на клиента: придется по нескольку страниц загружать, парсить и отображать лишь нужное.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Shaman007

Хотя, может быть, я сумел бы тебя нематериально замотивировать на отличненько.

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

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Eddy_Em

А так слишком высокая нагрузка будет и на сервер, и на клиента: придется по нескольку страниц загружать, парсить и отображать лишь нужное.

Не будет. Я отвечал в ветке про server-sent events, с помощью которых всё это изящно и дёшево делается.

http://www.w3schools.com/Html/html5_serversentevents.asp

Sadler ★★★
()
Последнее исправление: Sadler (всего исправлений: 1)
Ответ на: комментарий от Eddy_Em

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

Shaman007 ★★★★★
()
Ответ на: комментарий от vertexua

Это для тех, кому не нравится питон. И два первых wget'a надо выполнить один раз, затем только последний дергать.

sdio ★★★★★
()
Последнее исправление: sdio (всего исправлений: 1)
Ответ на: комментарий от sdio

Я изначально все написал на Python, потому что мне удобнее. Но сейчас выплыли еще нюансы, при которых оказалось что очень хорошо что на Python. Просто i3status не умеет комбинироваться в одной панели со сторонними модулями, что добрые люди написали py3status. Так вон для нее модули пишутся на Python. Я поменял от силы 30 строчек и все заработало

vertexua ★★★★★
() автор топика
Ответ на: комментарий от vertexua

Думаю стоит экспоненциальный таймаут запилить, чтобы детектировать активную дискуссию, но дохнуть если ничего не меняется долго

И режим «нацпол», когда отвечать нужно быстро (пока не удалили).

Pavval ★★★★★
()
Ответ на: комментарий от Eddy_Em

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

То-то ты нихрена не получаешь, и, ЧСХ, не начнешь...

Pavval ★★★★★
()
Ответ на: комментарий от Pavval

Нет, тогда я в ручном режиме нажимаю F5.

vertexua ★★★★★
() автор топика

Вот новая версия лапши, запилил изменение скорости.

https://gist.github.com/anonymous/e556cfcee8c8300e68e3

осталось два бага пофиксить

1) Если в 64ой строчке все-таки max_retries случится, то нотификатор сломается перманентно. Надо пофиксить

2) Нужно использовать нормальное логирование ошибок вместо высирания ошибки на тулбар

vertexua ★★★★★
() автор топика
Ответ на: комментарий от vertexua

Да, забыл сказать, эта версия - py3notify плагин, а не просто i3bar

vertexua ★★★★★
() автор топика
Ответ на: комментарий от Pavval

Скорее бы запилили PM чтобы можно было свои проклятия и оскорбления непосредственно пользователю писать, не нервируя модераторов :)

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от I-Love-Microsoft

Скорее бы запилили PM чтобы можно было свои проклятия и оскорбления непосредственно пользователю писать, не нервируя модераторов :)

Садюга! Это как эксгибициониста дома запереть - сплошное издевательство.

Pavval ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.