Newsgroup: it.comp.os.linux.iniziare
Titolo: script per controllare nuovi messaggi su news group

Salve.
Mi sto facendo uno script (anzi, l'avevo fatto e funzionava
discretamente) che mi segnala via mail se nel newsgroup qualcuno ha
risposto ad un mio post, come fanno praticamente tutti i forum (phpBB
ecc).
Solitamente uso i newsgroup tramite 
groups.google.it
e per fare lo script ho appunto usato il suo motore di ricerca.
Andando su 
groups.google.it
 e cercando author:indirizzo@email viene
tutto l'elenco dei post dell'utente selezionato.
Il mio script prelevava questa pagina la elaborava un pochino e
riusciva a prelevare i nuovi post che mi riguardano e me li manda via
mail.
Da pochi giorni non funziona più, o meglio, funziona ma solamente per
i post di agosto.
se fate una ricerca per 
http://groups.google.it/groups/search?q=author:matteo...@tiscali.it&scoring=d&
vengono solamente i post di agosto
che non significa che google li ha cancellati, infatti se li cerco con
il nome intero del post, google lo trova.
ma sembra che non voglia mostrare più di uno per mese.
questo link mostra il profilo con TUTTI i messaggi dell'utente (sia
che abbia scritto da google o da un news reader qualsiasi)
matteo...@tiscali.it
, classificati per NG e per mese:
http://groups.google.it/groups/profile?show=more&enc_user=HMTINBgAAAA4GKoKNycry66qpSE7tL6TP2KjVGK37ouv6Vg9aauhRg&group=
[ per ottenere quello di un altro utente cercate un suo post con
http://groups.google.it/groups/search?q=author:indirizzoi@email
dopo aver preso il post, cliccate su "profilo" accanto al nome ]
in questo link mi mostra tutti i miei post, il che significa che ci
sono, ma se clicco su un mese lui restringe il risultato ad un solo
post di quel mese.
qualcuno ne sa il motivo e come aggirarlo?
o quale altro servizio sfruttare?
(o qualche programma prefatto)
Grazie,
Matteo
P.S.: non ne sono completamente sicuro che questo post sia tanto
InTopic con icoli, ma visto che google lo usavo per lo script mi è
venuto naturale metterlo quì, anche perchè altrimenti non saprei dove
metterlo.

 InTopic con icoli
in effetti non lo č


parto dal fatto che ho una connessione internet da cui si esce solo su
porta 80 in http, quindi posso solo utilizzare interfacce web verso
nntp.
In teoria dovrei, ogni tot tempo, scaricare la lista di tutti i post
di usenet (di almeno una decina di ng), confrontarli con la lista dei
precedenti, che avrò salvato in locale ed ottenere i risultati voluti.
Ed in pratica è quello che ho fatto.
Il problema sta tutto nello scaricare quella lista, e trovare un buon
sito webnewsreader che lo consenta.
Poichè google me lo consente e con un buon motore di ricerca, la mia
scelta è caduta lì. Ma se ora mi limita ad un mese, non è più la
scelta migliore. E io devo trovare quella giusta.
Matteo

 $OHEAD
START=0
while [ $START -lt $RIGHE ];do
        lynx -source "$URL&start=$START&num=$RIGHE" > $OSEARCH
        cat $OSEARCH|sed '/<blockquote/,/<\/blockquote>/d'|sed '1,/
<b>Ordinato per data<\/b>/d'|egrep 'font class="gl"|href="/group/.*/
browse_.*/thread/' >> $OHEAD
        START=$[$START+$RIGHE]
done
cat $OHEAD|sed '/href="/s/.*href="\/group\/\([^\/]*\)\/[^\/]*\/[^\/]*\/
\([^\/]*\)\/.*>\(.*\)<\/a>/\1 - \2 - \3/'|sed '/font class/s/^.*- \
([0-9]*\) messaggi.*$/\1/'|grep -n . > $OTITLE
x=0
while [ $x -lt $(cat $OTITLE|wc -l) ];do
        x=$[$x+1]
        GROUP=$(cat $OTITLE|grep ^$x:|cut -f2- -d:|awk '{print $1}')
        ID=$(cat $OTITLE|grep ^$x:|cut -f2- -d:|awk '{print $3}')
        TITLE=$(cat $OTITLE|grep ^$x:|sed "s/^.* $ID - //")
        x=$[$x+1]
        MESG=$(cat $OTITLE|grep ^$x:|cut -f2- -d:)
        if [ $[$MESG+0] -eq 0 ];then exit;fi
        echo -n "$ID :: "
        echo -n "$MESG :: "
        echo -n "$GROUP :: "
        echo "$TITLE"
done|cat -n |sort -k2 |uniq -s 10|sort -u|cut -c8- > $TMESS
if ! diff  $TMESS $MESS >/dev/null;then
        NEWS=$(diff  $TMESS $MESS|grep \<|cut -c3-|awk '{print $1}')
        cp $MESS $OMESS
        for ID in $NEWS;do
                GROUP=$(cat $TMESS|grep $ID|awk '{print $5}')
                TITLE=$(cat $TMESS|grep $ID|sed "s/^.* $GROUP :: //")
                URL="
http://groups.google.it/group/$GROUP/browse_frm/
thread/$ID"
                echo "ID: $ID"
                echo "Titolo: $TITLE"
                echo "Gruppo: $GROUP"
                echo "URL: $URL"
                echo
        done > mailng
        echo >>mailng
        for ID in $(cat $TMESS|awk '{print $1}');do
                sed -i "/$ID/d" $OMESS
        done
        cat $OMESS >> $TMESS
        if [ $(cat mailng|wc -l) -gt 1 ];then
                cat mailng|mailx -s "Nuovi messaggi su newsgroup - $
(date)" matteo
        fi
        mv $MESS.4 $MESS.5
        mv $MESS.3 $MESS.4
        mv $MESS.2 $MESS.3
        mv $MESS.1 $MESS.2
        mv $MESS.0 $MESS.1
        mv $MESS $MESS.0
        cp $TMESS $MESS
fi
#rm $TMESS $OTITLE $OHEAD $OSEARCH $ORSEARCH1

 scelta migliore. E io devo trovare quella giusta.
oppure scarichi "tutti" gli articoli dell'ultimo mese , e il parsing lo
fai li sopra , togliendo i thread dove tu non compari

 fai li sopra , togliendo i thread dove tu non compari
ci ho pensato, si.
Il problema è che il formato di lettura di 
nntp.it
 non mi rende
semplice la vita, e dovrei fare troppe richieste http per fare ciò che
mi serve, in quanto una pagina mi da solamente 20 messaggi, inoltre mi
serve una pagina per ogni newsgroup.
Posso ridurne parecchie scrivendomi da qualche parte la data di ultima
lettura e prelevando ogni volta solo gli ultimi.
Poi c'è il nome dell'url che non è comodo.
Per esempio l'url di questa discussione è
http://www.nntp.it/comp-os-linux-iniziare/1398156-script-per-controllare-nuovi-messaggi-su-news-group.html
su 
http://www.nntp.it/comp-os-linux-iniziare/
su alcuni forum invece del nome c'è un seriale progressivo, il che
semplifica di molto le query.
cmq come dicevo nell'altro post, google mi fornisce l'ultimo mese di
post, che per un diff è oltresufficiente, quindi la soluzione che
avevo scelto dovrebbe funzionare, con il vantaggio che mi basta una
sola richiesta nntp per tutto usenet. Ecco la mail che mi manda:
===
Oggetto: Nuovi msg su np: script per controllare nuovi messaggi su
news group
 ID: a705bbff3e6d7c3c
Titolo: script per controllare nuovi messaggi su news group
Gruppo: it.comp.os.linux.iniziare
URL: 
http://groups.google.it/group/it.comp.os.linux.iniziare/browse_frm/thread/a705bbff3e6d7c3c
===
Matteo