-Подписка по e-mail

 

 -Поиск по дневнику

Поиск сообщений в braindump

 -Интересы

802.11 802.11b 802.11g access bsd diskless ethereal f90 f95 fortran gambas google earth gps internet kismet openev postgis qgis rdesktop sh

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 19.10.2006
Записей:
Комментариев:
Написано: 793


скриптик

Четверг, 13 Декабря 2007 г. 11:43 + в цитатник
Под влиянием Antropos начал сочинять скрипт, скачивающий дневник пользователя li.ru. Пока так:

#!/bin/sh
getpage ()
{
# $1,$2,$3,$4,$5 - url,mozdir,uid,ext,postid
wget ${1}/${3}/${5}/ --load-cookies ${2}/cookies.txt -O ${3}${5}.htm
cntr=`cat ${3}${5}.htm | grep "var maxpages="`
cntr=`echo ${cntr#*maxpages=}`
cntr=`echo ${cntr%;*}`
cntr=`expr $cntr - 1`
while [ $cntr -gt 0 ]
do
wget ${1}/${3}/${5}/page${cntr}${4} --load-cookies ${mozdir}/cookies.txt -O ${3}${5}${cntr}.htm
cat ${3}${5}${cntr}.htm >> ${3}${5}.htm
rm ${3}${5}${cntr}.htm
cntr=`expr $cntr - 1`
done
}
getpostid ()
{
ltmp=`echo ${1%/}`
ltmp=`echo ${ltmp##*/}`
echo $ltmp
}
url="http://www.liveinternet.ru/users"
mozdir="."
#uid="1333262"
uid="braindump"
getpage $url $mozdir $uid .shtml
tmp=`cat ${uid}.htm | grep class=\"TTL\" | koi2koi`
cntr="0"
for strings in $tmp
do
cntr=`expr $cntr + 1`
tmp1=`echo $strings | grep href= `
if [ "" != "$tmp1" ]
then
tmp1=`echo ${tmp1#*\"}`
tmp1=`echo ${tmp1%\"*}`
#echo $tmp1 >> jposts.tmp
#getpostid $tmp1 >> jpostids.tmp
getpostid $tmp1
#echo $ltmp
getpage $url $mozdir $uid .html $ltmp
fi
done
#grep class=\"ZAG\" |

Геморойненько у меня получается, опыта shell-программизма маловато. Однако ж вроде работает. Теперь надо парсить страницы постов с комментами - вытягивать собственно пост, комментарии юзеров...
Рубрики:  BSD
Программирование

Эльф-Аниматор   обратиться по имени Четверг, 13 Декабря 2007 г. 22:08 (ссылка)
скриптик - это что-то среднее между скептиком и скрипкой)
Ответить С цитатой В цитатник
zerolevel   обратиться по имени Четверг, 13 Декабря 2007 г. 22:11 (ссылка)
А по-моему, основное в скрипте - "шобы пело" :)) Но скромность украшает! ;)
Ответить С цитатой В цитатник
braindump   обратиться по имени Четверг, 13 Декабря 2007 г. 22:51 (ссылка)
Нопильнег, мне стыдно за способ, которым я режу строки. Что при упоминании sed'a и awk'а теряю волю:)
Ответить С цитатой В цитатник
braindump   обратиться по имени Четверг, 13 Декабря 2007 г. 22:53 (ссылка)
Эльф-Аниматор, скриптег:) Соответственно, следуя эхолалической логике, скрип тегов.
Ответить С цитатой В цитатник
braindump   обратиться по имени Пятница, 14 Декабря 2007 г. 02:03 (ссылка)
Блин, идея в том, чтобы продолжить начинание:)
Ответить С цитатой В цитатник
zerolevel   обратиться по имени Суббота, 15 Декабря 2007 г. 22:08 (ссылка)
braindump :))) а для меня sed / tail / tac что-то стали уже привычными (также, как (X)grep и awk)! Правда под Вендой ;)
Ответить С цитатой В цитатник
MonaSax   обратиться по имени Понедельник, 17 Декабря 2007 г. 22:37 (ссылка)
Ответить С цитатой В цитатник
braindump   обратиться по имени Понедельник, 17 Декабря 2007 г. 23:13 (ссылка)
MonaSax, спасибо, однако ж я решил пойти немного другим путём, ибо комментарии не экспортируются, а задача заключается в том, чтобы сохранить и их, причём в базе данных или xml-формате. Файлы парсятся на раз, просто программные конструкции получаются какими-то неуклюжими. Короче, там работы немного, больше говорю, чем делаю:) Лень-матушка:)
Ответить С цитатой В цитатник
Комментировать К дневнику Страницы: [1] [Новые]
 

Добавить комментарий:
Текст комментария: смайлики

Проверка орфографии: (найти ошибки)

Прикрепить картинку:

 Переводить URL в ссылку
 Подписаться на комментарии
 Подписать картинку