Subir archivos a 'utils_cli'
This commit is contained in:
pare
29552f2938
commit
32d9c2cbd7
S'han modificat 5 arxius amb 785 adicions i 0 eliminacions
378
utils_cli/bot_plus_cli_registre_json_cli.php
Normal file
378
utils_cli/bot_plus_cli_registre_json_cli.php
Normal file
|
@ -0,0 +1,378 @@
|
|||
<?php
|
||||
$crrss = microtime(true);
|
||||
|
||||
if (!empty($_SERVER["argv"][1])){
|
||||
$argument = $_SERVER["argv"][1];
|
||||
if (!empty($_SERVER["argv"][2])){
|
||||
$opcio = $_SERVER["argv"][2];
|
||||
} else {
|
||||
$opcio = null;
|
||||
echo "Has de indicar la opció:\n".
|
||||
" a -> afegir\n b -> esborrar tot\n d -> darrera publicació\n".
|
||||
" e -> eliminar duplicats\n n -> triar un numero de registre\n".
|
||||
" r -> repassar registres.\n";
|
||||
exit;
|
||||
}
|
||||
} else {
|
||||
// Presenta l'ajuda
|
||||
echo "NO HE REBUT la variable\n";
|
||||
echo "Cal el directori on s'executa el bot_plus.\n";
|
||||
exit;
|
||||
}
|
||||
$lloc = $argument;
|
||||
|
||||
// ara pot carregar la configuració i el logger
|
||||
include("".$lloc."/configuracio/bot_plus_cfg.php");
|
||||
include("".$lloc."/utils/bot_plus_etiquetes.php");
|
||||
include("".$lloc."/lib/exportrss.php");
|
||||
|
||||
if($opcio == "a") { goto afegir; }
|
||||
elseif($opcio == "b") { goto buidar; }
|
||||
elseif($opcio == "d") { goto darrera; }
|
||||
elseif($opcio == "e") { goto duplicats; }
|
||||
elseif($opcio == "n") { goto numregistre; }
|
||||
elseif($opcio == "r") { goto repassar; }
|
||||
else { echo "Has de indicar la opció:\n".
|
||||
" a -> afegir\n".
|
||||
" b -> esborrar tot\n".
|
||||
" d -> darrera publicació\n".
|
||||
" n -> triar un numero de registre(1)\n".
|
||||
" r -> repassar registres.\n";
|
||||
exit; }
|
||||
|
||||
|
||||
afegir:
|
||||
//echo $lloc;
|
||||
$fitxer = $lloc."/fitxers/registre.json";
|
||||
//echo $fitxer;
|
||||
|
||||
//matriu a partir del fitxer
|
||||
$json_dec = json_decode(file_get_contents($fitxer), true);
|
||||
|
||||
//echo "matriu fitxer\n";
|
||||
//print_r($json_dec);
|
||||
//echo is_array($json_dec)."\n";
|
||||
//sleep(2);
|
||||
$reg_arx = count($json_dec);
|
||||
echo "L'arxiu té ".$reg_arx." ".(($reg_arx<>1)?"registres":"registre")."\n";
|
||||
|
||||
// connecta amb la font RSS
|
||||
// Nombre segons les fonts. (1,2 o 3 màxim definides a cfg primer)
|
||||
|
||||
//$llista = array();
|
||||
|
||||
$i = 0;
|
||||
for ($f = 0; $f<$fitxers_nombre; $f++) {
|
||||
if ($f == 0) { $fitxer = $fitxer0; }
|
||||
if ($f == 1) { $fitxer = $fitxer1; }
|
||||
if ($f == 2) { $fitxer = $fitxer2; }
|
||||
if ($f == 3) { $fitxer = $fitxer3; }
|
||||
|
||||
// $json_dec = json_decode(file_get_contents($fitxer), true);
|
||||
|
||||
// Obtenim la font XML/RSS 2.0
|
||||
$feed = new ExportRSS($fitxer , "2.0");
|
||||
$channel = $feed->get_channel_data();
|
||||
|
||||
// variables per a fer la matriu del que arriba del fitxer XML/RSS 2.0
|
||||
$j = 0;
|
||||
$n = 0;
|
||||
|
||||
//print_r($feed);
|
||||
//exit;
|
||||
|
||||
//matriu a partir del fitxer
|
||||
//$json_dec = json_decode(file_get_contents($fitxer), true);
|
||||
|
||||
//$registre = shell_exec("wc -l fitxers/registre.json");
|
||||
//if($registre > 1) { $reg_arx = count($json_dec); }
|
||||
//else { $reg_arx = 0;
|
||||
// $json_dec = array();
|
||||
//}
|
||||
|
||||
foreach ($feed->get_data() as $item) {
|
||||
$id = $i;
|
||||
// $id = $reg_arx;
|
||||
$titol = trim($item['title']);
|
||||
$descripcio = trim($item['description']);
|
||||
$enllac = $item['link'];
|
||||
$pub = $item['date'];
|
||||
$pub_str = strtotime($item['date']);
|
||||
$guid = $item['guid']['isPermaLink'];
|
||||
// $media_titol = $item['media:title'];
|
||||
// $media_img = $item['media:content'];
|
||||
$fontrss = $fitxer;
|
||||
// prepare els filtres per generar la matriu
|
||||
// filtre les URL que continguen estes paraules
|
||||
if ( (str_contains($enllac, $p0)) ||
|
||||
(str_contains($enllac, $p1)) ||
|
||||
(str_contains($enllac, $p2)) ||
|
||||
(str_contains($enllac, $p3)) ||
|
||||
(str_contains($enllac, $p4)) ||
|
||||
(str_contains($enllac, $p5)) ||
|
||||
(str_contains($enllac, $p6)) ||
|
||||
(str_contains($enllac, $p7)) ||
|
||||
(str_contains($enllac, $p8)) ||
|
||||
(str_contains($enllac, $p9)) ||
|
||||
(str_contains($enllac, $p10)) ||
|
||||
(str_contains($enllac, $p11)) ||
|
||||
(str_contains($enllac, $p12)) ||
|
||||
(str_contains($enllac, $p13)) ||
|
||||
(str_contains($enllac, $p14)) ||
|
||||
(str_contains($enllac, $p15)) ||
|
||||
(str_contains($enllac, $p16)) ) {
|
||||
if ( (strpos($enllac,$np0) == false)||
|
||||
(strpos($enllac,$np1) == false ) ) {
|
||||
$tria = 1;
|
||||
$n++;
|
||||
}
|
||||
else { $tria = 0; }
|
||||
|
||||
} else { $tria = 0; }
|
||||
|
||||
$no_rep = in_array($pub_str, array_column($json_dec,"pub_str"));
|
||||
|
||||
//genere la matriu amb les dades filtrades
|
||||
if ( ($tria == 1)&&($no_rep == false) ){
|
||||
|
||||
if( ((strtotime("now") - $pub_str) <= $antic_max) ) {
|
||||
|
||||
// echo $f."-".$id."-".$n."-".$enllac."-".$pub."-".$fontrss."\n";
|
||||
$rsst_ara = $titol." ".$descripcio." ".$enllac;
|
||||
$etiqueta = MstEtiquetes($rsst_ara);
|
||||
$ara_str = strtotime('now');
|
||||
$ara = date('d/m/Y H:i:s',$ara_str);
|
||||
array_push($json_dec,
|
||||
[
|
||||
"titol" => (string)$titol,
|
||||
"descripcio" => (string)$descripcio,
|
||||
"enllac"=>(string)$enllac,
|
||||
"etiqueta"=>(string)$etiqueta,
|
||||
"pub"=>(string)$pub,
|
||||
"pub_str"=>(int)$pub_str,
|
||||
"publicada"=>(string)$ara,
|
||||
// "media"=>(string)$media
|
||||
// "media_tit"=>(string)$media_titol,
|
||||
// "media_img"=>(string)$media_img
|
||||
"font"=>$fontrss
|
||||
]);
|
||||
// }
|
||||
usleep(240000);
|
||||
$j++;
|
||||
|
||||
// print_r($json_dec);
|
||||
$fes_json = json_encode($json_dec, JSON_UNESCAPED_UNICODE|JSON_UNESCAPED_SLASHES|JSON_PRETTY_PRINT);
|
||||
$escriu_f_json = fopen($lloc."/fitxers/registre.json", "w") or die("No puc escriure al registre!");
|
||||
fwrite($escriu_f_json, $fes_json);
|
||||
fclose($escriu_f_json);
|
||||
// unset($json_dec);
|
||||
echo "Afegit registre ".$j." a registre.json.\n";
|
||||
|
||||
//filtre data màxima
|
||||
}
|
||||
|
||||
}
|
||||
$i++;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
//print_r($json_dec);
|
||||
exit;
|
||||
|
||||
buidar:
|
||||
// buidar fitxer json
|
||||
$buida_json = file_put_contents($lloc."/fitxers/registre.json", json_encode([]));
|
||||
echo "He buidat el fitxer registre.json\n";
|
||||
exit;
|
||||
|
||||
repassar:
|
||||
//echo $lloc;
|
||||
$fitxer = $lloc."/fitxers/registre.json";
|
||||
//echo $fitxer;
|
||||
//matriu a partir del fitxer
|
||||
$json_decc = json_decode(file_get_contents($fitxer), true);
|
||||
|
||||
// per a fer els repas linia a linia
|
||||
$maxim = count($json_decc);
|
||||
$e = 0;
|
||||
//$reg = 0;
|
||||
//$ara = strtotime("today");
|
||||
//$ara = strtotime(filemtime($fitxer));
|
||||
$ara = (filemtime($fitxer));
|
||||
//echo $ara."\n";
|
||||
echo "REPASE ".(($maxim<>1)?"ELS ".$maxim." REGISTRES":"EL REGISTRE").".\n";
|
||||
|
||||
for($e=0;$e<$maxim;$e++) {
|
||||
$titol = $json_decc[$e]['titol'];
|
||||
$men_mi = $json_decc[$e]['descripcio'];
|
||||
// $men_mi = preg_replace('/\\\\n/','',$men_mi);
|
||||
$men_mi = str_replace("\n"," ",$men_mi);
|
||||
$men_qi = $json_decc[$e]['enllac'];
|
||||
$men_qa = $json_decc[$e]['pub'];
|
||||
$men_tp = $json_decc[$e]['pub_str'];
|
||||
$men_et = $json_decc[$e]['etiqueta'];
|
||||
$men_fn = $json_decc[$e]['font'];
|
||||
$men_qb = $json_decc[$e]['publicada'];
|
||||
// $us_memoria = memory_get_usage();
|
||||
// echo "nº".$e." -> ".$titol."\n".trim($men_mi)."\n".$men_qi."\n".$men_et."\t-> ".$men_qa." - ".$men_tp."\n".$men_qb."\n".$men_fn."\n\n";
|
||||
echo "nº registre: ".($e+1)."\n\e[1m".$titol."\e[0;96m\n".trim($men_mi)."\e[0m\n\e[4mEnllaç:\e[0m ".$men_qi."\n\e[4mEtiquetes:\e[0m ".$men_et."\n".
|
||||
"\e[4mData RSS:\e[0m ".$men_qa." - ".$men_tp."\n\e[4mData tut\e[0m: ".$men_qb." ".date("O",$ara)."\n\e[4mFont RSS:\e[0m ".$men_fn."\n\n";
|
||||
// echo "memoria: ".$us_memoria."\n";
|
||||
// pausa d'un segon
|
||||
//sleep(1);
|
||||
//pausa de mig segon (amb microsegons => unitat més sis ceros == segons );
|
||||
//usleep(200000);
|
||||
// $reg++;
|
||||
|
||||
}
|
||||
//unset($json_decc);
|
||||
exit;
|
||||
|
||||
// darrera noticia publicada
|
||||
darrera:
|
||||
|
||||
$fitxer = $lloc."/fitxers/registre.json";
|
||||
//echo $fitxer;
|
||||
//matriu a partir del fitxer
|
||||
$json_decc = json_decode(file_get_contents($fitxer), true);
|
||||
|
||||
//print_r($json_dec);
|
||||
//exit;
|
||||
// per a fer els repas linia a linia
|
||||
$maxim = count($json_decc);
|
||||
$e = $maxim-1;
|
||||
$reg = 0;
|
||||
//$ara = strtotime("today");
|
||||
//$ara = strtotime(filemtime($fitxer));
|
||||
//$ara = (filemtime($fitxer));
|
||||
$ara = strtotime("now");
|
||||
//echo date("O",$ara)."\n";
|
||||
$ndp = 4;
|
||||
echo "Las darreres ".$ndp." publicacions han sigut:\n\n";
|
||||
for($e=($maxim-$ndp);$e<$maxim;$e++) {
|
||||
$titol = $json_decc[$e]['titol'];
|
||||
$men_mi = $json_decc[$e]['descripcio'];
|
||||
$men_qi = $json_decc[$e]['enllac'];
|
||||
$men_qa = $json_decc[$e]['pub'];
|
||||
$men_tp = $json_decc[$e]['pub_str'];
|
||||
$men_et = $json_decc[$e]['etiqueta'];
|
||||
$men_fn = $json_decc[$e]['font'];
|
||||
$men_qb = $json_decc[$e]['publicada'];
|
||||
// $men_qs = strtotime($json_dec[$e]['publicada']);
|
||||
|
||||
// echo "nº registre: ".$e."\n\e[1m".$titol."\e[0;96m\n".trim($men_mi)."\e[0m\n\e[4mEnllaç:\e[0m ".$men_qi."\n\e[4mEtiquetes:\e[0m ".$men_et."\n".
|
||||
// "\e[4mData RSS:\e[0m ".$men_qa." - ".$men_tp."\n\e[4mData tut\e[0m: ".$men_qb."\n\e[4mFont RSS:\e[0m ".$men_fn."\n\n";
|
||||
echo ($e+1)." - \e[1m".$titol."\e[0;96m\n".trim($men_mi)."\e[0m\n\e[4mEnllaç:\e[0m ".$men_qi."\n\e[4mEtiquetes:\e[0m ".$men_et."\n".
|
||||
"\e[4mData RSS:\e[0m ".$men_qa." - ".$men_tp."\n\e[4mData tut\e[0m: ".$men_qb." ".date("O",$ara)."\n\e[4mFont RSS:\e[0m ".$men_fn."\n\n";
|
||||
// pausa d'un segon
|
||||
//sleep(1);
|
||||
//pausa de mig segon (amb microsegons => unitat més sis ceros == segons );
|
||||
//usleep(200000);
|
||||
$reg++;
|
||||
}
|
||||
//unset($json_decc);
|
||||
goto retallar;
|
||||
|
||||
numregistre:
|
||||
|
||||
$fitxer = $lloc."/fitxers/registre.json";
|
||||
//echo $fitxer;
|
||||
//matriu a partir del fitxer
|
||||
$json_dec = json_decode(file_get_contents($fitxer), true);
|
||||
|
||||
//print_r($json_dec);
|
||||
//exit;
|
||||
// per a fer els repas linia a linia
|
||||
$maxim = count($json_dec);
|
||||
|
||||
// preguntar si vols volcar-ho al fitxer .txt
|
||||
echo "\nEscriu el nombre del registre a revisar entre 0 i ".$maxim."\n";
|
||||
//return "\nEscriu el nombre del registre a revisar: \n";
|
||||
$handle = fopen ("php://stdin","r");
|
||||
$line = fgets($handle);
|
||||
if( !is_numeric(trim($line)) ) {
|
||||
echo "HA DE SER UN NUMERO!\n";
|
||||
// return "HE ACABAT DONCS!\n";
|
||||
goto numregistre;
|
||||
} else {
|
||||
if (trim($line)> $maxim) {
|
||||
echo "Supera el nombre de registres.\n";
|
||||
goto numregistre;
|
||||
} else { goto numregistrev; }
|
||||
}
|
||||
fclose($handle);
|
||||
|
||||
numregistrev:
|
||||
echo "\n";
|
||||
echo "Este és el registre ".trim($line)."\n\n";
|
||||
|
||||
$e = trim($line);
|
||||
$reg = 0;
|
||||
//$ara = strtotime("today");
|
||||
//$ara = strtotime(filemtime($fitxer));
|
||||
$ara = (filemtime($fitxer));
|
||||
//echo $ara."\n";
|
||||
//echo "La darrera publicació ha sigut:\n\n";
|
||||
//for($e=0;$e<$maxim;$e++) {
|
||||
$titol = $json_dec[$e]['titol'];
|
||||
$men_mi = $json_dec[$e]['descripcio'];
|
||||
$men_qi = $json_dec[$e]['enllac'];
|
||||
$men_qa = $json_dec[$e]['pub'];
|
||||
$men_tp = $json_dec[$e]['pub_str'];
|
||||
$men_et = $json_dec[$e]['etiqueta'];
|
||||
$men_fn = $json_dec[$e]['font'];
|
||||
$men_qb = $json_dec[$e]['publicada'];
|
||||
|
||||
echo "nº registre: ".($e+1)."\n\e[1m".$titol."\e[0;96m\n".trim($men_mi)."\e[0m\n\e[4mEnllaç:\e[0m ".$men_qi."\n\e[4mEtiquetes:\e[0m ".$men_et."\n".
|
||||
"\e[4mData RSS:\e[0m ".$men_qa." - ".$men_tp."\n\e[4mData tut\e[0m: ".$men_qb."\n\e[4mFont RSS:\e[0m ".$men_fn."\n\n";
|
||||
|
||||
// pausa d'un segon
|
||||
//sleep(1);
|
||||
//pausa de mig segon (amb microsegons => unitat més sis ceros == segons );
|
||||
//usleep(200000);
|
||||
$reg++;
|
||||
//}
|
||||
|
||||
//goto retallar;
|
||||
|
||||
duplicats:
|
||||
|
||||
$fitxer = $lloc."/fitxers/registre.json";
|
||||
//echo $fitxer;
|
||||
//matriu a partir del fitxer
|
||||
$json_dec = json_decode(file_get_contents($fitxer), true);
|
||||
$maxim = count($json_dec);
|
||||
|
||||
$ids = array_column($json_dec, 'enllac');
|
||||
$ids = array_unique($ids);
|
||||
$mat_nova = array_filter($json_dec, function ($clau, $valor) use ($ids) {
|
||||
return in_array($valor, array_keys($ids));
|
||||
}, ARRAY_FILTER_USE_BOTH);
|
||||
|
||||
print_r($mat_nova);
|
||||
|
||||
goto retallar;
|
||||
|
||||
retallar:
|
||||
|
||||
$fitxer = $lloc."/fitxers/registre.json";
|
||||
$json_dec = json_decode(file_get_contents($fitxer), true);
|
||||
|
||||
// limitar a 480 registres (fer variable?)
|
||||
if($maxim > ($max_linies+$max_linies_ad)) {
|
||||
$json_dec = array_splice($json_dec,($maxim-($max_linies+$max_linies_ad)),$maxim);
|
||||
//print_r($json_dec);
|
||||
|
||||
// actualitza el fitxer json
|
||||
//$fes_json = json_encode($json_dec, JSON_UNESCAPED_UNICODE|JSON_UNESCAPED_SLASHES|JSON_OBJECT_AS_ARRAY|JSON_PRETTY_PRINT);
|
||||
$fes_json = json_encode($json_dec, JSON_UNESCAPED_UNICODE|JSON_UNESCAPED_SLASHES|JSON_PRETTY_PRINT);
|
||||
$escriu_f_json = fopen($lloc."/fitxers/registre.json", "w") or die("No puc escriure al registre!");
|
||||
fwrite($escriu_f_json, $fes_json);
|
||||
fclose($escriu_f_json);
|
||||
}
|
||||
$crmnf = microtime(true);
|
||||
$tmf = $crmnf - $crrss;
|
||||
echo "Temps registres: ".round($tmf,4)."\n";
|
||||
//$log->lwrite("Temps mencions: ".round($tmf,4)."");
|
||||
?>
|
82
utils_cli/bot_plus_cli_seguidors_json.php
Normal file
82
utils_cli/bot_plus_cli_seguidors_json.php
Normal file
|
@ -0,0 +1,82 @@
|
|||
<?php
|
||||
if (!empty($_SERVER["argv"][1])){
|
||||
$argument = $_SERVER["argv"][1];
|
||||
} else {
|
||||
// Presenta l'ajuda
|
||||
echo "NO HE REBUT la variable\n";
|
||||
echo "Cal el directori on s'executa el bot_plus.\n";
|
||||
exit;
|
||||
}
|
||||
|
||||
$lloc = $argument;
|
||||
|
||||
//defineix on es troba el fitxer a executar
|
||||
//$lloc = realpath(dirname(__FILE__));
|
||||
|
||||
$fitxer = $lloc."/fitxers/seguidors_detall_act.json";
|
||||
|
||||
$json_dec = json_decode(file_get_contents($fitxer), true);
|
||||
|
||||
//echo "FITXER DEC\n";
|
||||
//echo "- matriu json_dec \n";
|
||||
//print_r($json_dec);
|
||||
|
||||
$maxim = count($json_dec);
|
||||
$e=1;
|
||||
|
||||
//$ara = strtotime("today");
|
||||
//$ara = strtotime(filemtime($fitxer));
|
||||
$ara = (filemtime($fitxer));
|
||||
//echo $ara."\n";
|
||||
|
||||
echo "Actualitzat el ".date('d/m/Y', $ara)."\n";
|
||||
echo "REPASE ELS ".($maxim-1)." SEGUIDORS.\n";
|
||||
|
||||
for($e=1;$e<$maxim;$e++) {
|
||||
$usua = $json_dec[$e]['usuari'];
|
||||
$nom = $json_dec[$e]['nom'];
|
||||
$acct = $json_dec[$e]['acct'];
|
||||
$crea = $json_dec[$e]['creat'];
|
||||
$publ = $json_dec[$e]['ult_pub'];
|
||||
|
||||
if($publ!=null) {
|
||||
$acti = round((($ara - strtotime($publ))/86400),0);
|
||||
} else {
|
||||
$acti = "NO";
|
||||
}
|
||||
if($acti == "NO"){
|
||||
$actiu = "NO PUB";
|
||||
}elseif($acti == 0) {
|
||||
$actiu = "Hui";
|
||||
}elseif($acti == 1) {
|
||||
$actiu = "Ahir";
|
||||
}elseif($acti == 2) {
|
||||
$actiu = "Despús ahir";
|
||||
}elseif(($acti >= 3)&&($acti<=6)) {
|
||||
$actiu = "Esta setmana";
|
||||
}elseif(($acti >= 7)&&($acti<=13)) {
|
||||
$actiu = "Una setmana";
|
||||
}elseif(($acti >= 14)&&($acti<=20)) {
|
||||
$actiu = "Dos setmanes";
|
||||
}elseif(($acti >= 21)&&($acti<=29)) {
|
||||
$actiu = "Tres setmanes";
|
||||
}elseif(($acti >= 30)&&($acti<=59)) {
|
||||
$actiu = "Més d'un mes";
|
||||
}else{
|
||||
$actiu = "MÉS de 2 MESOS";
|
||||
}
|
||||
$usuallarg = strlen((string)$usua);
|
||||
|
||||
if($usuallarg < 18) {
|
||||
//echo "nº".$e."\t -> ".$usua."\t -> ".utf8_decode($nom)."\t -> ".$acct."\n";
|
||||
//echo "nº".$e."\t -> ".$usua."\t -> ".utf8_decode($nom)."\t -> ".$acct."\t -> ".date("r",strtotime($crea))." -> ".date("r",strtotime($publ))."\t -> ".$acti." \n";
|
||||
echo "nº".$maxim - $e." -> ".$usua."\t\t -> ".utf8_decode($nom)." -> ".$acct."\t -> ".date("r",strtotime($crea))."\t -> ".$actiu." (".$acti.")\n";
|
||||
} else {
|
||||
echo "nº".$maxim - $e." -> ".$usua." -> ".utf8_decode($nom)." -> ".$acct."\t -> ".date("r",strtotime($crea))."\t -> ".$actiu." (".$acti.") \n";
|
||||
}
|
||||
// pausa d'un segon
|
||||
//sleep(1);
|
||||
//pausa de mig segon (amb microsegons => unitat més sis ceros == segons );
|
||||
//usleep(200000);
|
||||
}
|
||||
?>
|
72
utils_cli/bot_plus_cli_urls_json_cli_refer.php
Normal file
72
utils_cli/bot_plus_cli_urls_json_cli_refer.php
Normal file
|
@ -0,0 +1,72 @@
|
|||
<?php
|
||||
$crmn = microtime(true);
|
||||
|
||||
if (!empty($_SERVER["argv"][1])){
|
||||
$argument = $_SERVER["argv"][1];
|
||||
} else {
|
||||
// Presenta l'ajuda
|
||||
echo "NO HE REBUT la variable\n";
|
||||
echo "Cal el directori on s'executa el bot_plus.\n";
|
||||
exit;
|
||||
}
|
||||
$lloc = $argument;
|
||||
|
||||
// ara pot carregar la configuració i el logger
|
||||
include("".$lloc."/configuracio/bot_plus_cfg.php");
|
||||
include("".$lloc."/utils/bot_plus_funcions.php");
|
||||
require_once("".$lloc."/lib/logger.php");
|
||||
|
||||
//echo $lloc;
|
||||
$fitxer = $lloc."/fitxers/registre.json";
|
||||
//echo $fitxer;
|
||||
|
||||
//matriu a partir del fitxer
|
||||
$json_dec = json_decode(file_get_contents($fitxer), true);
|
||||
|
||||
// per a fer els repas linia a linia
|
||||
$maxim = count($json_dec);
|
||||
echo "L'arxiu té ".$maxim." ".(($maxim<>1)?"registres":"registre")."\n";
|
||||
|
||||
$e = 0;
|
||||
$reg = 0;
|
||||
//$ara = strtotime("today");
|
||||
//$ara = strtotime(filemtime($fitxer));
|
||||
$ara = (filemtime($fitxer));
|
||||
//echo $ara."\n";
|
||||
|
||||
echo "ACTUALITZE ".(($maxim<>1)?"ELS ".$maxim." REGISTRES":"EL REGISTRE").".\n";
|
||||
|
||||
$escriu_urls = fopen($lloc."/fitxers/urls_pub.txt", "w") or die("No puc escriure al registre!");
|
||||
|
||||
for($e=0;$e<$maxim;$e++) {
|
||||
$urls_json = $json_dec[$e]['enllac'];
|
||||
// echo "nº".$e." -> ".$men_id." | ".$men_mi. " -> ".$men_tp." - ".utf8_decode($men_qi)." \t-> ".$men_qa."\n";
|
||||
$fp_oratge = preg_replace('/[^A-Za-z0-9\-]/','',trim($json_dec[$e]['enllac']));
|
||||
$fp_oratge = preg_replace('/https/',' ',$fp_oratge);
|
||||
$filt_oratge = strpos($fp_oratge,"previsioprevisio");
|
||||
if($filt_oratge == false ) {
|
||||
fwrite($escriu_urls, $urls_json."\n");
|
||||
}
|
||||
|
||||
// pausa d'un segon
|
||||
//sleep(1);
|
||||
//pausa de mig segon (amb microsegons => unitat més sis ceros == segons );
|
||||
//usleep(200000);
|
||||
$reg++;
|
||||
}
|
||||
fclose($escriu_urls);
|
||||
// consulta font RSS i afegeix les actuals.
|
||||
|
||||
|
||||
if($maxim > ($max_linies+$max_linies_ad)) {
|
||||
//$ordena_url = shell_exec("tail -".$max_linies+$max_linies_ad." ".$lloc."/fitxers/urls_pub.txt | sort | uniq | tee ".$lloc."/fitxers/urls_pub.txt");
|
||||
$ordena_url = shell_exec("tail -".$max_linies+$max_linies_ad." ".$lloc."/fitxers/urls_pub.txt | tee ".$lloc."/fitxers/urls_pub.txt");
|
||||
}
|
||||
|
||||
$copia_bak = shell_exec("cat ".$lloc."/fitxers/urls_pub.txt > ".$lloc."/fitxers/urls_pub.bak");
|
||||
|
||||
$crmnf = microtime(true);
|
||||
$tmf = $crmnf - $crmn;
|
||||
echo "Temps reconstrucció de urls: ".round($tmf,4)."\n";
|
||||
//$log->lwrite("Temps mencions: ".round($tmf,4)."");
|
||||
?>
|
181
utils_cli/bot_plus_impulsos_json_cli.php
Normal file
181
utils_cli/bot_plus_impulsos_json_cli.php
Normal file
|
@ -0,0 +1,181 @@
|
|||
<?php
|
||||
$crmn = microtime(true);
|
||||
|
||||
if (!empty($_SERVER["argv"][1])){
|
||||
$argument = $_SERVER["argv"][1];
|
||||
} else {
|
||||
// Presenta l'ajuda
|
||||
echo "NO HE REBUT la variable\n";
|
||||
echo "Cal el directori on s'executa el bot_plus.\n";
|
||||
exit;
|
||||
}
|
||||
$lloc = $argument;
|
||||
|
||||
// ara pot carregar la configuració i el logger
|
||||
include("".$lloc."/configuracio/bot_plus_cfg.php");
|
||||
include("".$lloc."/utils/bot_plus_funcions.php");
|
||||
require_once("".$lloc."/lib/logger.php");
|
||||
|
||||
//$fitxer = $lloc."/fitxers/mencions.json";
|
||||
$fitxer = $lloc."/fitxers/impulsos.json";
|
||||
//echo $fitxer;
|
||||
|
||||
//matriu a partir del fitxer
|
||||
$json_dec = json_decode(file_get_contents($fitxer), true);
|
||||
|
||||
//echo "matriu fitxer\n";
|
||||
//print_r($json_dec);
|
||||
//echo is_array($json_dec)."\n";
|
||||
//sleep(2);
|
||||
$reg_arx = count($json_dec);
|
||||
echo "L'arxiu té ".$reg_arx." ".(($reg_arx<>1)?"registres":"registre")."\n";
|
||||
|
||||
$dades_url = ["mention"];
|
||||
//http_build_query_for_curl($dades_url, $limita_enq);
|
||||
|
||||
// consulta els existents per afegir-los a la matriu existent si no hi son
|
||||
//$menc_mat_nova = ConsultaNotificacions($token,$base_url,$limit_m,$headers);
|
||||
$limit_m = 80;
|
||||
$imp_mat_nova = ConsultaNotificacions($token,$base_url,$limit_m,$headers);
|
||||
//print_r($imp_mat_nova);
|
||||
//exit;
|
||||
|
||||
$nom_mat = count($imp_mat_nova);
|
||||
echo "A la instància he repassat les darreres ".$nom_mat." ".(($nom_mat<>1)?"notificacions":"notificació")."\n";
|
||||
// fer matriu de mencions noves
|
||||
|
||||
$imp_mat = array();
|
||||
if($nom_mat>=1) {
|
||||
|
||||
// llegir fitxer de temps
|
||||
$temps_imp = strtotime("now");
|
||||
$espera_ob = fopen($lloc . "/fitxers/impulsos_temps.txt", "r") or die("No puc obrir la darrera data!");
|
||||
$espera_ll = fread($espera_ob,filesize($lloc . "/fitxers/impulsos_temps.txt"));
|
||||
$espera_imp = $espera_ll;
|
||||
fclose($espera_ob);
|
||||
|
||||
$temps_ini = $espera_imp - 604800;
|
||||
|
||||
$mc = 0;
|
||||
for($f=0;$f<$nom_mat;$f++) {
|
||||
$men_id = $imp_mat_nova[$f]['id'];
|
||||
$men_tip = $imp_mat_nova[$f]['type'];
|
||||
$men_qui = $imp_mat_nova[$f]['account']['acct'];
|
||||
$men_qua = $imp_mat_nova[$f]['created_at'];
|
||||
// $men_mid = $imp_mat_nova[$f]['status']['id'];
|
||||
if( ($men_tip == "reblog")||($men_tip == "favourite") ){
|
||||
if ( strtotime($men_qua) >= $temps_ini ) {
|
||||
$men_mid = $imp_mat_nova[$f]['status']['id'];
|
||||
$imp_mat[] = array ( 'id' => (int)$men_id, 'mis_id' => (int)$men_mid, 'qui' => $men_qui, 'mencio' => $men_tip, 'quan' => $men_qua );
|
||||
$mc++;
|
||||
}
|
||||
// sleep(2);
|
||||
}
|
||||
/** else {
|
||||
// $imp_mat[] = array ( );
|
||||
$imp_mat[] = array ( 'id' => (int)0, 'mis_id' => (int)0, 'qui' => null, 'mencio' => null, 'quan' => null );
|
||||
}
|
||||
**/
|
||||
}
|
||||
|
||||
//print_r($imp_mat);
|
||||
//exit;
|
||||
|
||||
$comprova_mat = is_array($imp_mat);
|
||||
echo "comprova: ".$comprova_mat."\n";
|
||||
//echo "menc_mat_f\n";
|
||||
//print_r($imp_mat);
|
||||
//sleep(2);
|
||||
//exit;
|
||||
|
||||
// evita repetir
|
||||
$fins = count($imp_mat);
|
||||
//if( ($mc<0) ){
|
||||
echo "De les ".$nom_mat." notificacions, ".$mc." ".(($mc<>1)?"són":"és")." un impuls.\n";
|
||||
$cont_fit = 0;
|
||||
//echo $fins."\n";
|
||||
|
||||
for($g=0;$g<$fins;$g++) {
|
||||
$id_busc = $imp_mat[$g]['id'];
|
||||
$qu_busc = $imp_mat[$g]['qui'];
|
||||
$tp_busc = $imp_mat[$g]['mencio'];
|
||||
// echo "id_busc: ".$id_busc."\n";
|
||||
$troba = array_search($id_busc, array_column($json_dec, 'id'));
|
||||
// echo "troba: ".$troba."\n";
|
||||
|
||||
if( ($troba !== false ) ) {
|
||||
// echo "El ".$tp_busc." ".$id_busc." de ".$qu_busc." ja està al registre\n";
|
||||
} else {
|
||||
if($id_busc<>0) {
|
||||
echo "NOU IMPULS: ".$tp_busc." ".$id_busc." de ".$qu_busc."\n";
|
||||
array_push($json_dec,
|
||||
['id' => (int)$imp_mat[$g]['id'], 'mis_id' => (int)$imp_mat[$g]['mis_id'],
|
||||
'qui' => $imp_mat[$g]['qui'], 'mencio' => $imp_mat[$g]['mencio'],
|
||||
'quan' => $imp_mat[$g]['quan']
|
||||
]);
|
||||
}
|
||||
$cont_fit++;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
//echo "matriu després de push\n";
|
||||
//print_r($json_dec);
|
||||
if($cont_fit >= 1) {
|
||||
// actualitza el fitxer json
|
||||
// $fes_json = json_encode($json_dec, JSON_UNESCAPED_UNICODE|JSON_UNESCAPED_SLASHES|JSON_OBJECT_AS_ARRAY|JSON_PRETTY_PRINT);
|
||||
$fes_json = json_encode($json_dec, JSON_UNESCAPED_UNICODE|JSON_UNESCAPED_SLASHES|JSON_PRETTY_PRINT);
|
||||
$escriu_f_json = fopen($lloc."/fitxers/impulsos.json", "w") or die("No puc escriure al registre!");
|
||||
fwrite($escriu_f_json, $fes_json);
|
||||
fclose($escriu_f_json);
|
||||
} else {
|
||||
echo "No hi ha impulsos nous.\n";
|
||||
}
|
||||
|
||||
//fin if matriu de notificacions té registres
|
||||
}
|
||||
|
||||
|
||||
// per a fer els repas linia a linia
|
||||
$maxim = count($json_dec);
|
||||
$e=0;
|
||||
|
||||
//$ara = strtotime("today");
|
||||
//$ara = strtotime(filemtime($fitxer));
|
||||
$ara = (filemtime($fitxer));
|
||||
//echo $ara."\n";
|
||||
|
||||
echo "REPASE ".(($maxim<>1)?"ELS ".$maxim." REGISTRES":"EL REGISTRE").".\n";
|
||||
|
||||
|
||||
for($e=0;$e<$maxim;$e++) {
|
||||
$men_id = $json_dec[$e]['id'];
|
||||
$men_mi = $json_dec[$e]['mis_id'];
|
||||
$men_qi = $json_dec[$e]['qui'];
|
||||
$men_qa = $json_dec[$e]['quan'];
|
||||
$men_tp = $json_dec[$e]['mencio'];
|
||||
|
||||
echo "nº".$e." -> ".$men_id." | ".$men_mi. " -> ".$men_tp." \t- ".utf8_decode($men_qi)." \t-> ".$men_qa."\n";
|
||||
|
||||
// pausa d'un segon
|
||||
//sleep(1);
|
||||
//pausa de mig segon (amb microsegons => unitat més sis ceros == segons );
|
||||
//usleep(200000);
|
||||
}
|
||||
|
||||
if($maxim > $max_linies) {
|
||||
$json_dec = array_splice($json_dec,($maxim-$max_linies),$maxim);
|
||||
//print_r($json_dec);
|
||||
|
||||
// actualitza el fitxer json
|
||||
//$fes_json = json_encode($json_dec, JSON_UNESCAPED_UNICODE|JSON_UNESCAPED_SLASHES|JSON_OBJECT_AS_ARRAY|JSON_PRETTY_PRINT);
|
||||
$fes_json = json_encode($json_dec, JSON_UNESCAPED_UNICODE|JSON_UNESCAPED_SLASHES|JSON_PRETTY_PRINT);
|
||||
$escriu_f_json = fopen($lloc."/fitxers/impulsos.json", "w") or die("No puc escriure al registre!");
|
||||
fwrite($escriu_f_json, $fes_json);
|
||||
fclose($escriu_f_json);
|
||||
}
|
||||
$crmnf = microtime(true);
|
||||
$tmf = $crmnf - $crmn;
|
||||
echo "Temps de revisió dels impulsos: ".round($tmf,4)."";
|
||||
//$log->lwrite("Temps mencions: ".round($tmf,4)."");
|
||||
?>
|
72
utils_cli/bot_plus_urls_json_cli_refer.php
Normal file
72
utils_cli/bot_plus_urls_json_cli_refer.php
Normal file
|
@ -0,0 +1,72 @@
|
|||
<?php
|
||||
$crmn = microtime(true);
|
||||
|
||||
if (!empty($_SERVER["argv"][1])){
|
||||
$argument = $_SERVER["argv"][1];
|
||||
} else {
|
||||
// Presenta l'ajuda
|
||||
echo "NO HE REBUT la variable\n";
|
||||
echo "Cal el directori on s'executa el bot_plus.\n";
|
||||
exit;
|
||||
}
|
||||
$lloc = $argument;
|
||||
|
||||
// ara pot carregar la configuració i el logger
|
||||
include("".$lloc."/configuracio/bot_plus_cfg.php");
|
||||
include("".$lloc."/utils/bot_plus_funcions.php");
|
||||
require_once("".$lloc."/lib/logger.php");
|
||||
|
||||
//echo $lloc;
|
||||
$fitxer = $lloc."/fitxers/registre.json";
|
||||
//echo $fitxer;
|
||||
|
||||
//matriu a partir del fitxer
|
||||
$json_dec = json_decode(file_get_contents($fitxer), true);
|
||||
|
||||
// per a fer els repas linia a linia
|
||||
$maxim = count($json_dec);
|
||||
echo "L'arxiu té ".$maxim." ".(($maxim<>1)?"registres":"registre")."\n";
|
||||
|
||||
$e = 0;
|
||||
$reg = 0;
|
||||
//$ara = strtotime("today");
|
||||
//$ara = strtotime(filemtime($fitxer));
|
||||
$ara = (filemtime($fitxer));
|
||||
//echo $ara."\n";
|
||||
|
||||
echo "ACTUALITZE ".(($maxim<>1)?"ELS ".$maxim." REGISTRES":"EL REGISTRE").".\n";
|
||||
|
||||
$escriu_urls = fopen($lloc."/fitxers/urls_pub.txt", "w") or die("No puc escriure al registre!");
|
||||
|
||||
for($e=0;$e<$maxim;$e++) {
|
||||
$urls_json = $json_dec[$e]['enllac'];
|
||||
// echo "nº".$e." -> ".$men_id." | ".$men_mi. " -> ".$men_tp." - ".utf8_decode($men_qi)." \t-> ".$men_qa."\n";
|
||||
$fp_oratge = preg_replace('/[^A-Za-z0-9\-]/','',trim($json_dec[$e]['enllac']));
|
||||
$fp_oratge = preg_replace('/https/',' ',$fp_oratge);
|
||||
$filt_oratge = strpos($fp_oratge,"previsioprevisio");
|
||||
if($filt_oratge == false ) {
|
||||
fwrite($escriu_urls, $urls_json."\n");
|
||||
}
|
||||
|
||||
// pausa d'un segon
|
||||
//sleep(1);
|
||||
//pausa de mig segon (amb microsegons => unitat més sis ceros == segons );
|
||||
//usleep(200000);
|
||||
$reg++;
|
||||
}
|
||||
fclose($escriu_urls);
|
||||
// consulta font RSS i afegeix les actuals.
|
||||
|
||||
|
||||
if($maxim > ($max_linies+$max_linies_ad)) {
|
||||
//$ordena_url = shell_exec("tail -".$max_linies+$max_linies_ad." ".$lloc."/fitxers/urls_pub.txt | sort | uniq | tee ".$lloc."/fitxers/urls_pub.txt");
|
||||
$ordena_url = shell_exec("tail -".$max_linies+$max_linies_ad." ".$lloc."/fitxers/urls_pub.txt | tee ".$lloc."/fitxers/urls_pub.txt");
|
||||
}
|
||||
|
||||
$copia_bak = shell_exec("cat ".$lloc."/fitxers/urls_pub.txt > ".$lloc."/fitxers/urls_pub.bak");
|
||||
|
||||
$crmnf = microtime(true);
|
||||
$tmf = $crmnf - $crmn;
|
||||
echo "Temps reconstrucció de urls: ".round($tmf,4)."\n";
|
||||
//$log->lwrite("Temps mencions: ".round($tmf,4)."");
|
||||
?>
|
Loading…
Referencia en una nova incidència