From 32d9c2cbd7c79d29d71cde53f7fd04c0f33ab945 Mon Sep 17 00:00:00 2001 From: bonobo Date: Thu, 22 Aug 2024 00:22:28 +0200 Subject: [PATCH] Subir archivos a 'utils_cli' --- utils_cli/bot_plus_cli_registre_json_cli.php | 378 ++++++++++++++++++ utils_cli/bot_plus_cli_seguidors_json.php | 82 ++++ .../bot_plus_cli_urls_json_cli_refer.php | 72 ++++ utils_cli/bot_plus_impulsos_json_cli.php | 181 +++++++++ utils_cli/bot_plus_urls_json_cli_refer.php | 72 ++++ 5 files changed, 785 insertions(+) create mode 100644 utils_cli/bot_plus_cli_registre_json_cli.php create mode 100644 utils_cli/bot_plus_cli_seguidors_json.php create mode 100644 utils_cli/bot_plus_cli_urls_json_cli_refer.php create mode 100644 utils_cli/bot_plus_impulsos_json_cli.php create mode 100644 utils_cli/bot_plus_urls_json_cli_refer.php diff --git a/utils_cli/bot_plus_cli_registre_json_cli.php b/utils_cli/bot_plus_cli_registre_json_cli.php new file mode 100644 index 0000000..f56fe19 --- /dev/null +++ b/utils_cli/bot_plus_cli_registre_json_cli.php @@ -0,0 +1,378 @@ + 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).""); +?> diff --git a/utils_cli/bot_plus_cli_seguidors_json.php b/utils_cli/bot_plus_cli_seguidors_json.php new file mode 100644 index 0000000..5a839d1 --- /dev/null +++ b/utils_cli/bot_plus_cli_seguidors_json.php @@ -0,0 +1,82 @@ += 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); +} +?> diff --git a/utils_cli/bot_plus_cli_urls_json_cli_refer.php b/utils_cli/bot_plus_cli_urls_json_cli_refer.php new file mode 100644 index 0000000..69f2203 --- /dev/null +++ b/utils_cli/bot_plus_cli_urls_json_cli_refer.php @@ -0,0 +1,72 @@ +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).""); +?> diff --git a/utils_cli/bot_plus_impulsos_json_cli.php b/utils_cli/bot_plus_impulsos_json_cli.php new file mode 100644 index 0000000..c3d8b4c --- /dev/null +++ b/utils_cli/bot_plus_impulsos_json_cli.php @@ -0,0 +1,181 @@ +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).""); +?> diff --git a/utils_cli/bot_plus_urls_json_cli_refer.php b/utils_cli/bot_plus_urls_json_cli_refer.php new file mode 100644 index 0000000..69f2203 --- /dev/null +++ b/utils_cli/bot_plus_urls_json_cli_refer.php @@ -0,0 +1,72 @@ +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).""); +?>