This commit is contained in:
pezcurrel 2020-10-13 17:48:55 +02:00
parent 80eb9cef2c
commit ef3da65663
6 changed files with 44 additions and 22 deletions

1
.gitignore vendored
View file

@ -16,3 +16,4 @@
/web/mustard/zzz-materiali/snippettoni.php /web/mustard/zzz-materiali/snippettoni.php
/web/mustard/zzz-materiali/worldcities/ /web/mustard/zzz-materiali/worldcities/
/web/mustard/zzz-materiali/fork_awesome_css/ /web/mustard/zzz-materiali/fork_awesome_css/
/system/

View file

@ -18,6 +18,7 @@
- usare menu.php di mustard, poi modificarlo in modo che da cell si veda menu hamburger - o simili - usare menu.php di mustard, poi modificarlo in modo che da cell si veda menu hamburger - o simili
* blacklistare byoblu * blacklistare byoblu
- spostare tutta la roba sensibile in una dir "contenitore", tipo fare che la root dir è "/srv/http/mastodon.help/site", e in "/srv/http/mastodon.help" fare dir per logs, per accounts, per ini files, ecc.
- rimuovere Instances.Chosen dappertutto - rimuovere Instances.Chosen dappertutto
* crawler.php: togliere "lecho", aggiungere time ed etr, aggiungere controllo memoria * crawler.php: togliere "lecho", aggiungere time ed etr, aggiungere controllo memoria
- crawler.php, peerscrawl.php: verificare perché stderr viene indirizzato a stdout, fare in modo che lo sia sempre a livello di script - crawler.php, peerscrawl.php: verificare perché stderr viene indirizzato a stdout, fare in modo che lo sia sempre a livello di script

View file

@ -158,6 +158,17 @@ switch($path) {
$menu['instances']['selected']=true; $menu['instances']['selected']=true;
break; break;
case '/instancesnew':
$cont=array(
'fp'=>'instances_'.$dlang.'.php',
'atit'=>' - '.$data[$dlang.'.instances.atit'],
'desc'=>$data[$dlang.'.instances.desc'],
'js'=>array()
);
$menu['instances']['href']=null;
$menu['instances']['selected']=true;
break;
case '/about': case '/about':
$cont=array( $cont=array(
'fp'=>'about_'.$dlang.'.php', 'fp'=>'about_'.$dlang.'.php',

View file

@ -0,0 +1,9 @@
#!/bin/bash
BASEDIR=$(dirname "$0")
cd "$BASEDIR"
if [ "$1" == "dopeers" ]; then
php peerscrawl.php -e peerscrawl.exclude > peerscrawl.log
php crawler.php -p peers > crawler.log
else
php crawler.php > crawler.log
fi

View file

@ -1,4 +0,0 @@
#!/bin/sh
BASEDIR=$(dirname "$0")
cd "$BASEDIR"
php peerscrawl.php -e peerscrawl.exclude && php crawler.php

View file

@ -61,7 +61,7 @@ $opts=array(
'dryrun'=>false, 'dryrun'=>false,
'jsonfp'=>__DIR__.'/instances.json', 'jsonfp'=>__DIR__.'/instances.json',
'jsonwrite'=>false, 'jsonwrite'=>false,
'peersfp'=>__DIR__.'/peers' 'peersfp'=>null
); );
$help='crawler.php $help='crawler.php
@ -81,10 +81,11 @@ $help='crawler.php
peerscrawl.php [options] peerscrawl.php [options]
OPTIONS OPTIONS
-p, --peersfp <file> -p, --peersfp <file>
Definisce il file da cui caricare la lista delle istanze di cui cercare Definisce un file da cui caricare la lista delle istanze di cui cercare
di recuperare i dati. Nota: questa opzione è ininfluente se il programma di recuperare i dati. Per default non è definito alcun file, quindi
viene lanciato per riprendere unesecuzione precedente interrotta. il programma si limita a controllare le istanze già presenti del db.
DEFAULT: «'.$opts['peersfp'].'» Nota: questa opzione è ininfluente se il programma viene lanciato
per riprendere unesecuzione precedente interrotta.
-t, --timeout <secondi> -t, --timeout <secondi>
Definisce il timeout in secondi di ogni tentativo di connessione. Definisce il timeout in secondi di ogni tentativo di connessione.
DEFAULT: «'.$opts['timeout'].'» DEFAULT: «'.$opts['timeout'].'»
@ -317,7 +318,7 @@ if (!$riprendi) {
} }
} }
echo('Carico le istanze note e vive dal DB e le aggiungo alla lista di quelle da controllare.'.N); echo('Carico le istanze note e vive dal DB e le metto nella lista di quelle da controllare.'.N);
$res=mysqli_query($link,'SELECT URI FROM Instances WHERE Dead=0') $res=mysqli_query($link,'SELECT URI FROM Instances WHERE Dead=0')
or mexit(__LINE__.': '.mysqli_error($link).N,3); or mexit(__LINE__.': '.mysqli_error($link).N,3);
while($row=mysqli_fetch_assoc($res)) while($row=mysqli_fetch_assoc($res))
@ -331,20 +332,23 @@ if (!$riprendi) {
while($row=mysqli_fetch_assoc($res)) while($row=mysqli_fetch_assoc($res))
$deadinsts[]=$row['URI']; $deadinsts[]=$row['URI'];
echo('Carico le istanze dalla lista «'.$opts['peersfp'].'» e aggiungo alla lista di quelle da controllare quelle che non ci sono già e che non risultano morte.'.N); if (!is_null($opts['peersfp'])) {
$peers=@file($opts['peersfp'],FILE_IGNORE_NEW_LINES|FILE_SKIP_EMPTY_LINES); echo('Carico le istanze dalla lista «'.$opts['peersfp'].'» e aggiungo alla lista di quelle da controllare quelle che non ci sono già e che non risultano morte.'.N);
if ($peers===false) $peers=@file($opts['peersfp'],FILE_IGNORE_NEW_LINES|FILE_SKIP_EMPTY_LINES);
mexit('Non ho potuto aprire in lettura «'.$opts['peersfp'].'».'.N,1); if ($peers===false)
foreach ($peers as $pdom) { mexit('Non ho potuto aprire in lettura «'.$opts['peersfp'].'».'.N,1);
if (!in_array($pdom,$insts)) foreach ($peers as $pdom) {
if (!in_array($pdom,$deadinsts)) if (!in_array($pdom,$insts))
if (!willtrunc($pdom,'Instances','URI')) if (!in_array($pdom,$deadinsts))
$insts[]=$pdom; if (!willtrunc($pdom,'Instances','URI'))
$insts[]=$pdom;
else
echo('Listanza «'.$pdom.'» non sarà considerata perché il suo dominio è troppo lungo per il campo «URI» della tabella «Instances» nel DB.'.N);
else else
echo('Listanza «'.$pdom.'» non sarà considerata perché il suo dominio è troppo lungo per il campo «URI» della tabella «Instances» nel DB.'.N); echo('Listanza «'.$pdom.'» non sarà considerata perché È MORTA!'.N);
else }
echo('Listanza «'.$pdom.'» non sarà considerata perché È MORTA!'.N);
} }
sort($insts); sort($insts);
// shuffle($insts); // shuffle($insts);
ksort($blacklist); ksort($blacklist);