RSS
Pages: 1 ... 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 ... 67
[>] Re: Разделение Хабра
ii.14
Difrex(station13, 7) — spline
2014-10-24 11:11:15


>Может, развернём там ноду для хабра?
Ага, я так и хотел сделать =)
Уже почти свой фетчер хабры написал :D

[>] Re: Вики
ii.14
vit01(mira, 1) — Difrex
2014-10-23 12:37:41


Отключил
Можно свободно править и создавать страницы

[>] Вики
ii.14
vit01(mira, 1) — All
2014-10-20 11:41:46


Сделал вики на http://ii-project.tk
Пока что там пусто.

[>] начинаю что-то делать
ii.14
vit01(mira, 1) — All
2014-10-18 17:01:18


Почистил блэклист и базу на ноде от плохих сообщений.

маленький скриптик для автоматизации процесса:
function getecho($echo) {
		$echofile=explode("\n", file_get_contents("echo/".$echo));
		array_pop($echofile);
		return $echofile;
}
$blacklist=explode("\n", file_get_contents("./blacklist.txt"));
array_pop($blacklist);
$echolist=scandir("echo/");
$echos=[];
foreach($echolist as $echofile) {
	if($echofile!="." && $echofile!="..") {
		$echos[]=$echofile;
	}
}
foreach($echos as $echo) {
	$msgids=getecho($echo);
	foreach($blacklist as $blackmsg) {
			$key=array_search($blackmsg, $msgids);
			if($key!=false) {
				unset($msgids[$key]);
				echo "deleted msgid ".$blackmsg." from echo ".$echo."\n";
			}
	}
	$msgids=array_values($msgids);
	echo "resaving echo ".$echo." to base\n";
	file_put_contents("echo/".$echo, implode("\n", $msgids)."\n");
}
foreach($blacklist as $blackmsg) {
	if(file_exists("msg/".$blackmsg)) {
			echo "removing file ".$blackmsg." from base\n";
			unlink("msg/".$blackmsg);
	}
}

[>] Re: Разделение Хабра
ii.14
vit01(mira, 1) — spline
2014-10-24 19:47:43


А у меня вот такой скрипт рассылки используется в твоём rss-фетчере ii://lenta.dark.14

#!/usr/bin/python2
# -*- coding:utf8 -*-

import urllib,base64,os

authstr="мой пароль от ноды"
adress="http://ii-net.tk/ii/ii-point.php?q=/u/"

files=os.listdir("tosses") # каталог с раскиданными сообщениями

for file in files:
        f=open("tosses/"+file).read()
        code=base64.b64encode(f)

        data = urllib.urlencode({'tmsg': code,'pauth': authstr})
        out = urllib.urlopen(adress + 'point', data).read()
        print out

        if out.startswith('msg ok'):
                os.remove("tosses/"+file)
Тут совсем всё просто и понятно

[>] Re: Разделение Хабра
ii.14
spline(station13, 1) — Difrex
2014-10-24 13:47:39


>У меня стоят эти пакеты =)

Тогда надо смотреть что
html.tostring (page.find_class ("content html_format")
Выдаёт там. Я никаких воркэраундов не лепил просто и у себя на системе только тестировал.

[>] Re: Разделение Хабра
ii.14
spline(station13, 1) — Difrex
2014-10-24 13:25:16


Ему нужны две дополнительные либы: feedparser и html2text. Причём второе требует соответствующий пакет в системе (это и послужило препятствием внедрению у меня на ноде).

[>] Re: Разделение Хабра
ii.14
Difrex(station13, 7) — spline
2014-10-24 13:30:02


У меня стоят эти пакеты =)

[>] Re: Разделение Хабра
ii.14
spline(station13, 1) — Difrex
2014-10-24 12:49:16


>Так, а как он должен работать, фетчер?

Кладём в директорию tools/client-toss вот такой скрипт и создаём поддиректорию msgs/RSS-bot. В неё скриптом habr2ii.py буду ссыпаться сообщения для тоссинга.
#!/bin/bash

#cd /srv/www/spline.rooker.ru/data/ii/tools/client-toss/
HISTORY=1 # Если установлено в 0, сообщения удаляются. Иначе переносятся в директорию histo

IIURL=http://127.0.0.1:62220/u/point
POINTS='../points.txt' # Путь к списку поинтов относительно данного скрипта
MKTOSS='../../mktoss.py' # Путь к тоссеру относительно директории поинта

ROOT_PWD=$(pwd)

for DIR in $(find ./msgs/ -maxdepth 1 -type d); do
    POINT=$(echo $DIR | sed 's/.\/msgs\///')
    if [[ $POINT != '' ]]; then
	PAUTH=$(cat $POINTS | grep $POINT | sed 's/:.*//')
	cd $DIR
	for MSG in $(find ./ -maxdepth 1 -type f -name "*.txt"); do
	    python2.7 $MKTOSS $MSG
	    wget -q --header="Host: spline.rooker.ru" $IIURL -O - --post-data "pauth=$PAUTH&tmsg=$(cat $MSG.toss)"
	    if [[ $HISTORY == 0 ]]; then
		rm $MSG
	    else
		if ! [ -d ./histo ]; then
		    mkdir ./histo
		fi
		mv $MSG ./histo
	    fi
	    rm $MSG.toss
	done
    fi
    cd $ROOT_PWD
done

Добавляем поинта в points.txt. Потом в habr2ii.py указываем путь для сыпания сообщений, линк на feed и название эхи.

$ python habr2ii.py && autotosspost.sh всё.

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

[>] Re: Разделение Хабра
ii.14
Difrex(station13, 7) — spline
2014-10-24 13:18:54


python habr2ii.py
Traceback (most recent call last):
  File "habr2ii.py", line 40, in <module>
    f.write (get_content (rss.entries[i].link).encode ("UTF-8"))
  File "habr2ii.py", line 18, in get_content
    text = h.handle (html.tostring (page.find_class ("content html_format")[0]))
IndexError: list index out of range

[>] ...
ii.14
vit01(mira, 1) — All
2014-10-24 19:58:53


Снял с rss-фетча ii://stallman.polit.14 в связи с будущим появлением более интересных источников контента (хабр и.т.д.).

[>] Re: Разделение Хабра
ii.14
Difrex(station13, 7) — spline
2014-10-24 12:29:53


Так, а как он должен работать, фетчер?

[>] ii-search-tool
ii.14
vit01(mira, 1) — All
2014-10-31 17:09:08


Я таки сделал довольно простую, но очень полезную cli-утилиту для поиска сообщений в базе ii!
Возможности:
* Ищет по эхам, отправителям, получателям, адресам станции, по временным промежуткам, по сабжу и тексту сообщения
* Если надо искать по всем значениям параметра поиска, то просто жмёте Enter
* По первым 4 параметрам поиска можно вводить несколько значений через разделитель (пробел или || для адреса)
* Найденные сообщения сортируются по времени

Этот скрипт входит в состав моего ii-клиента и требует ii_functions.py для пары функций.
Скачать там же, в репозитории https://github.com/vit1-irk/iicli-modular

[>] Re: Путь развития ii
ii.14
spline(station13, 1) — vit01
2014-11-04 11:27:56


Ура, товрищи!

[>] Поддержка баз в ноде
ii.14
vit01(mira, 1) — All
2014-11-03 20:42:31


Я таки доделал поддержку Mysql в php ноде! Теперь нода поддерживает как стандартный формат хранения данных, так и её. Переключение между типами баз идёт всего лишь через пару строчек в конфиге! Индекс для удобства в базу не выносится, а остаётся в каталоге /echo. Для миграции со стандартной базы на Mysql (или просто для переноса сообщений в таблицу) надо после правки конфига всего лишь запустить скрипт mysql-migrate.php.

Пока что всё это находится в ветке features, завтра будет переезд моей ноды и тестирование в боевых условиях =) А когда новая нода достигнет полной стабильности, я отправлю изменения в master.

[>] Re: начинаю что-то делать
ii.14
vit01(mira, 1) — vit01
2014-10-25 20:24:43


Ветка features php ноды: вынес в конфиг лимиты, немного подделал сохранение сообщений, добавил возможность логирования ошибок (см. конфиг). Тестов пока не проводил.
На очереди добавление работы с базой данных.

[>] Re: Разделение Хабра
ii.14
spline(station13, 1) — Difrex
2014-10-31 14:57:26


Версии python-html2text и lxml какие? Пока я нашёл неприятный баг со старой версией html2text.

[>] Re: начинаю что-то делать
ii.14
vit01(mira, 1) — vit01
2014-10-26 15:46:33


Ещё кое-что пофиксил и добавил заглушку на mysql класс. Код становится более запутанным, к сожалению. Придётся разбивать ii-functions.php на отдельные файлы и, наверное, вводить кое-где ООП.

Кстати, ii-search-tool скоро будет готов.

[>] Re: Путь развития ii
ii.14
vit01(mira, 1) — vit01
2014-11-03 21:01:45


В общем, пункт 6 реализован, утилита для поиска из пункта 3 сделана. Думаю теперь доделывать пункт 3, а также сделать кроме ii-reader.php ещё и ii-writer.php или вообще в один файл всё засунуть.

[>] PHP-нода && Re: начинаю что-то делать
ii.14
vit01(mira, 1) — vit01
2014-11-02 20:01:19


Работа над поддержкой mysql в php-ноде в полном разгаре! =)
Написал скрипт миграции с обычной базы на mysql, переворотил класс для работы с базой, поправил код ii-functions и ещё пары файлов для поддержки обеих баз + куча мелких фиксов. В настоящее время требуется внимательная ловля багов и оптимизация скорости скриптов.

Новая версия обещает быть вкусной и фичастой =) Следите за коммитами в ветке features репозитория!

[>] Mysql
ii.14
vit01(mira, 1) — All
2014-11-04 12:07:43


Станция mira успешно мигрировала на базу данных Mysql! Фетчинг работает, RSS работает, постинг работает.

Последний багфикс ii-php от сегодняшнего дня в репозитории присутствует.

[>] Re: Разделение Хабра
ii.14
vit01(mira, 1) — Difrex
2014-11-05 14:45:18


Ура, товарищи! Я уже загейтовал.

[>] Re: Разделение Хабра
ii.14
spline(station13, 1) — Difrex
2014-11-05 15:00:15


Отлично, но для этого сгодился бы любой RSS-фетчер на самом деле =)

Соль была в репосте статей целиком в формате markdown. Как учёбу разгребу, попробую накалякать что-нить менее требовательное к сторонним библиотекам. Где-то на уровне lxml проблема, судя по всему. Причём отловить её мне так и не удалось -- на одном и том же линке получаю разные данные и никогда статью целиком. Всегда это какой-то кусок страницы.

[>] Re: Разделение Хабра
ii.14
Difrex(station13, 7) — Difrex
2014-11-05 13:30:53


http://ii.difrex.ru/habra.14 -- гейтуйте, если хотите. Хабра фетчится.

[>] Re: Разделение Хабра
ii.14
vit01(mira, 1) — vit01
2014-11-05 14:55:08


Оу, тут куча пустых мест, хтмл теги и до хабраката :(
Ну ничего, и так читать можно =)

Спасибо, что даже так у нас есть, чего почитать =).

[>] Re: Разделение Хабра
ii.14
spline(station13, 1) — Difrex
2014-11-05 15:01:40


До кучи сделай замену вот такого вот [img habrastorage.org/files/112/e60/c80/112e60c801d640e9be72430911ab5abd.jpg" align="right" width="300] на директ-линки на изображения =)

[>] Re: Разделение Хабра
ii.14
Difrex(station13, 7) — spline
2014-11-05 15:12:46


Да, проблемы есть. Набросал на коленке.

Можете в один пост баги написать, я все поправлю? :)

[>] Re: Разделение Хабра
ii.14
vit01(mira, 1) — Difrex
2014-11-05 16:59:46


>Я просто заменяю > на '\n'
Лучше заменять на пробел, а то с \n читать совсем неудобно.

>Не вижу смысла тянуть всю статью. Она может быть не интересна совсем. А так, если захочется, то можно кликнуть на "читать дальше" и перейти на всю статью.
Логика понятна, жаль, что у нас тянутся все хабы, а не только те, которые нужны. Но просто удобнее не ходить по ссылкам постоянно, а читать всё в ii

>Куда сохранять? Линки же вроде остаются...
Теперь вижу :)

[>] Re: Разделение Хабра
ii.14
vit01(mira, 1) — Difrex
2014-11-05 15:40:04


> Можете в один пост баги написать, я все поправлю? :)

1. Много пустых мест и отступов в содержимом
2. Отображается не вся статья, а только начало
3. Вместо нормальной читаемой разметки html-теги
4. Неплохо бы сохранять ссылки на картинки, чтобы посмотреть можно было

[>] пустота
ii.14
vit01(mira, 1) — spline
2014-11-05 15:47:05


Мой фетчер ругается на invalid message: Qbp11Juz6v0TAexm3sdq в эхе ii.14, которое идёт с тебя. Оно пустое.

[>] Re: пустота
ii.14
Difrex(station13, 7) — vit01
2014-11-05 16:36:46


Да, мне сегодня пришло такое

[>] Re: Разделение Хабра
ii.14
Difrex(station13, 7) — vit01
2014-11-05 19:04:36


>жаль, что у нас тянутся все хабы, а не только те, которые нужны
Сейчас тянется только hub/linux/

Говорите, на какие подписаться :)

[>] Re: Разделение Хабра
ii.14
Difrex(station13, 7) — Difrex
2014-11-05 19:08:36


И еще такой вопрос:
Тянуть статьи из песочницы или нет? Сейчас они пропускаются.

[>] Re: пустота
ii.14
vit01(mira, 1) — Difrex
2014-11-05 17:02:35


>Да, мне сегодня пришло такое
А я во все свои фетчеры встроил проверку на плохие сообщения, поэтому invalid message не пройдёт :)

[>] Re: Разделение Хабра
ii.14
Difrex(station13, 7) — vit01
2014-11-05 16:40:25


>1. Много пустых мест и отступов в содержимом
Я просто заменяю <br> на '\n'

>2. Отображается не вся статья, а только начало
Не вижу смысла тянуть всю статью. Она может быть не интересна совсем. А так, если захочется, то можно кликнуть на "читать дальше" и перейти на всю статью.
Хотя смысл во всей статье тоже есть. Подумаю над этим. Собственно говоря, добавить фетчер всей стать -- совсем не проблема.

>3. Вместо нормальной читаемой разметки html-теги
Работаю над этим =)

>4. Неплохо бы сохранять ссылки на картинки, чтобы посмотреть можно было
Куда сохранять? Линки же вроде остаются...

[>] Re: Разделение Хабра
ii.14
Difrex(station13, 7) — Difrex
2014-11-05 19:29:35


Проба markdown. Там у них на хабре переодически прилетают всякие div, s и прочие html-теги. Надо придумать, как их правильно пропускать.

Кто там говорил про статью про парсилку хабры на хабре? =)

[>] Re: Разделение Хабра
ii.14
vit01(mira, 1) — Difrex
2014-11-06 08:51:51


> Кто там говорил про статью про парсилку хабры на хабре? =)
Я говорил =) К примеру, вот эта статья: http://habrahabr.ru/post/192670/

[>] Re: пустота
ii.14
spline(station13, 1) — vit01
2014-11-05 20:14:25


Пофиксил свою базу.

[>] Re: Разделение Хабра
ii.14
spline(station13, 1) — Difrex
2014-11-05 20:03:13


Парсилка html на легко делается с помощью html2text.

[>] Email to ii
ii.14
vit01(mira, 1) — All
2014-11-10 15:31:00


Через пару дней будет готово и это! С получением и раскидкой писем я уже разобрался (с fetchmail и procmail), теперь надо дописать парсер и тоссер, и можно будет читать свою электронную почту с помощью ii.

[>] Re: Разделение Хабра
ii.14
vit01(mira, 1) — Difrex
2014-11-06 04:21:36


ii://HwArNq5Jtn2XGcZ0dg4A
ii://RwDkjN6NVBLt0feRdTi7
+ ещё lisp предлагали

[>] Re: Разделение Хабра
ii.14
ntrknlmp.exe(mira, 9) — Difrex
2014-11-06 12:44:03


можно простым регэкспом вырезать все html теги. как вариант

[>] Re: Разделение Хабра
ii.14
Difrex(station13, 7) — ntrknlmp.exe
2014-11-06 13:46:39


>можно простым регэкспом вырезать все html теги. как вариант

Так и сделал

[>] Re: Email to ii
ii.14
vit01(mira, 1) — ntrknlmp.exe
2014-11-11 20:15:10


> Я сейчас в другой плоскости занимаюсь рефакторингом клиента.
Интересно узнать, в какой ;-)

// просто я твой клиент использую каждый день, это критично =)

[>] Re: Email to ii
ii.14
vit01(mira, 1) — ntrknlmp.exe
2014-11-11 17:19:05


А как бы ты это реализовал?

[>] Re: Email to ii
ii.14
vit01(mira, 1) — ntrknlmp.exe
2014-11-11 16:17:55


> с вложениями можно будет работать?
Я думал над этим и решил, что это не нужно. Просто дело в том, что здесь, в ii, даже картинки смотреть не очень-то получается, да и как это сделать? Через base64-ююки это очень неудобно, и портится база, загружать на внешний сервис - тоже не нужно, а, в случае чего, имеется веб-интерфейс почтового сервиса.

[>] Re: Email to ii
ii.14
ntrknlmp.exe(mira, 9) — vit01
2014-11-11 18:15:42


>Кстати, интересно, когда таки можно будет нормально пользоваться уведомлениями в клиенте? =)

Не знаю, гляну вечером наверное..Если там не долго, исправлю. Я сейчас в другой плоскости занимаюсь рефакторингом клиента.

[>] Re: Email to ii
ii.14
vit01(mira, 1) — ntrknlmp.exe
2014-11-11 18:08:05


Тогда всё-таки лучше не надо. Нагромоздить протокол мы всегда успеем, и лучше делать это тогда, когда это действительно необходимо.

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

[>] Re: Email to ii
ii.14
ntrknlmp.exe(mira, 9) — vit01
2014-11-11 17:37:38


вариантов много, но все они из разряда "нагромождать протокол" и т.д.

Pages: 1 ... 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 ... 67