Notizie: lo sai che puoi installare Firefox anche su dispositivi Apple iPhone e iPad? Provalo subito!

Autore Topic: Sostituire sessionstore.json per ripristinare vecchie sessioni  (Letto 2510 volte)

0 Utenti e 1 Visitatore stanno visualizzando questo topic.

Offline Wiccio

  • Post: 50
    • Refusi Refugium Peccatorum
Anzitutto una domanda: nei sessionstore.json di SeaMonkey sono contenute le informazioni riguardo le sessioni e dunque i siti aperti nelle varie schede, dico bene?

Mensilmente mi salvo all'interno di una cartella dedicata le copie del sessionstore.json. Ora, dal momento che ripristinando un punto di ripristino ho perso le schede che avevo aperto allìinterno del browser, non basterebbe sostituire il sessionstore.json all'interno della cartella (Guida > Informazioni per la risoluzione dei problemi > Mostra cartella) con l'ultimo mio sessionstore.json che mi salvai a mo' di backup?
Seguendo questo procedimento, se apro il browser mi apre comunque una pagina bianca, non recupera alcuna scheda di navigazione.

Offline gialloporpora

  • サンドロ
  • Moderatore
  • Post: 10806
    • Il blog che non c'è
Re: Sostituire sessionstore.json per ripristinare vecchie sessioni
« Risposta #1 il: 26 Aprile 2014 15:26:16 »
Hai provato ad aprire il file con un editor di testo?
Se c'è qualche URL dovresti vederlo facillmente.

Offline Wiccio

  • Post: 50
    • Refusi Refugium Peccatorum
Re: Sostituire sessionstore.json per ripristinare vecchie sessioni
« Risposta #2 il: 26 Aprile 2014 18:45:53 »
Ciao gialloporpora, grazie per la risposta.

Sì, ho provato ad aprire il file con un blocco noto e i link li vedo ma... non "facilmente"! Saranno un centinaio di link sparsi in un'unica riga e risalire a tutti i link, anche cercando la stringa "http", risulta un lavoro piuttosto brigoso. Pensavo che sostituendo il presente sessionstore.json mi ri-aprisse in automatico le vecchie schede aperte. Non dovrebbe funzionare in questo modo?
« Ultima modifica: 26 Aprile 2014 18:48:12 da Wiccio »

Offline gialloporpora

  • サンドロ
  • Moderatore
  • Post: 10806
    • Il blog che non c'è
Re: Sostituire sessionstore.json per ripristinare vecchie sessioni
« Risposta #3 il: 26 Aprile 2014 19:43:43 »
Anche io mi aspetterei che ripristinasse la sessione, però non ti so dire perché non funzioni, do per scontato che nelle impostazioni sia impostato di ripristinare la sessione precedente.

Se vuoi mandarmi quel file io te li posso estrarre i link, è un file json e non è difficile (anche via email).
Ciao

Offline Wiccio

  • Post: 50
    • Refusi Refugium Peccatorum
Re: Sostituire sessionstore.json per ripristinare vecchie sessioni
« Risposta #4 il: 26 Aprile 2014 20:16:55 »
Te ne sarei immensamente grato, ti sto mandando un MP con il mio sessionstore.json più recente. :like:
Poi mi dirai se è un lavoro rapido e fattibile, vista la mole di schede che, solitamente, mi apro! Eventualmente, riusciresti a spiegarmi quale tecnica adotti? Manualmente è un lavoro disumano! E dato che ho anche altri file da passare al setaccio...!

Offline gialloporpora

  • サンドロ
  • Moderatore
  • Post: 10806
    • Il blog che non c'è
Re: Sostituire sessionstore.json per ripristinare vecchie sessioni
« Risposta #5 il: 27 Aprile 2014 01:13:37 »
Allora,
io ti mando i link che ho estratto dal file in PM. Quando hai scaricato il file avvisami che lo tolgo da Dropbox.
Quel file è corrotto ed è anche troppo grosso per una sessione di lavoro (6MB, ho fatto pure fatica ad aprirlo con l'editor di testo che uso di solito), volevo importarlo come file json, però è proprio corrotto (vedi che inizia con caratteri strani).  ho estratto a mano i link con una regex, praticamente tutte le cose che iniziano con http e salvati in un file. Sono due righe di Python, però saremo OT, se vuoi in PM ti mando lo script, però magari chiedendo su forum appositi trovi anche di meglio e volendo, se sai cos'è, si può fare anche con sed o se hai preferenze con qualunque linguaggio di scripting.
Io ho estratto i 14949 :-? link e te li ho messi in una pagina html così li puoi aprire con clic.

Offline Geko

  • Post: 1376
Re: Sostituire sessionstore.json per ripristinare vecchie sessioni
« Risposta #6 il: 27 Aprile 2014 08:04:53 »
Se non è troppo OT (o troppo lunga) potresti postare l'espressione  e/o script che usi per estrarre gli indirizzi http dal file? A volte ci ho provato ma con miseri risultati.

Offline Wiccio

  • Post: 50
    • Refusi Refugium Peccatorum
Re: Sostituire sessionstore.json per ripristinare vecchie sessioni
« Risposta #7 il: 27 Aprile 2014 09:42:57 »
Intanto grazie mille per il tuo lavoro.
Che sia corrotto è normale, avevo iniziato a cancellare manualmente i caratteri laddove recuperavo link. Non è normale, invece, che ci siano 14949 link! :? Magari arrivo ad aprirmi una 50ina di schede, è vero, ma mai così tante! Sembra, difatti, visionando i collegamenti link estrapolati, che abbia salvato tutti i link presenti all'interno delle schede che avevo aperte. Senza contare che all'incirca dal link 1000 al link 14000 si ripetono in loop gli stessi due link.

Riguardo i linguaggi di programmazione con supporto regex, personalmente conosco il C# e il VBA ma a livello molto basilare e credo non supportino regex. Prima di scrivere qui avevo pensato di inserire all'interno di un array tutto il file e di tirarmi fuori i link basandomi sugli indici ma è una procedura che mi richiede tempo e che dovrei effettuare per tentativi non essendo molto pratico con il codice. Il Python non lo conosco per nulla. Se non necessita conoscenze particolari, e soprattutto se non ti scoccia passarmi il tuo codice, accetterei lo script molto volentieri!
Pensavo e speravo, come facevo notare, che sostituire il sessionstore.json bastasse per recuperare vecchie sessioni. :(

Puoi cancellare il file, ho recuperato i link, grazie ancora. ;)

Offline gialloporpora

  • サンドロ
  • Moderatore
  • Post: 10806
    • Il blog che non c'è
Re: Sostituire sessionstore.json per ripristinare vecchie sessioni
« Risposta #8 il: 27 Aprile 2014 10:58:54 »
VBA cos'è? Il C è troppo complicato, nel senso che per fare cose semplici ci si mette una vita, però sicuramente si può fare.
Rozzo , si può migliorare di molto la regex, il codice che avevo usato è questo:
https://gist.github.com/gialloporpora/11340885

Secondo me sostituire un sessionstore.json non corrotto recupera la vecchia sessione, sostituire il sessionstore.json col file che mi hai mandato no.
Non so dirti il motivo per cui si sia corrotto però.





Offline Iceberg

  • Moderatore
  • Post: 9171
Re: Sostituire sessionstore.json per ripristinare vecchie sessioni
« Risposta #9 il: 27 Aprile 2014 11:11:40 »
Secondo me sostituire un sessionstore.json non corrotto recupera la vecchia sessione, sostituire il sessionstore.json col file che mi hai mandato no.

Confermo.
Se il file non è corrotto la vecchia sessione viene recuperata correttamente.

Offline Wiccio

  • Post: 50
    • Refusi Refugium Peccatorum
Re: Sostituire sessionstore.json per ripristinare vecchie sessioni
« Risposta #10 il: 27 Aprile 2014 12:47:49 »
VBA cos'è? Il C è troppo complicato, nel senso che per fare cose semplici ci si mette una vita, però sicuramente si può fare.
Rozzo , si può migliorare di molto la regex, il codice che avevo usato è questo:
https://gist.github.com/gialloporpora/11340885

Secondo me sostituire un sessionstore.json non corrotto recupera la vecchia sessione, sostituire il sessionstore.json col file che mi hai mandato no.
Non so dirti il motivo per cui si sia corrotto però.
VBA è Visual Basic for Applications. E sì, con il C# non mi ci sono messo perché avrei impiegato l'intera giornata! :D

Era corrotto perché l'ho corrotto io cancellando caratteri. Ma anche la versione non corrotta, o comunque altri sessionstore.json più remoti, non mi recuperavano le schede sostituendoli nella cartella di SeaMonkey.

Nel frattempo, comunque, sono riuscito a risolvere! Praticamente, lanciando un chkdsk /r sul disco fisso, mi ha riparato un cluster nella cartella ottenibile da Guida > Informazioni per la risoluzione dei problemi > Mostra cartella e ora riesco correttamente a recuperare le schede sostituendo il sessionstore.json. In compenso mi ha sminchiato la posta elettronica (tutta la posta ricevuta il mese di aprile è scomparsa) ma almeno ho e abbiamo la conferma che, a scanso di strani problemi, basta sostituire il sessionstore pe recuperare le vecchie schede! Stavo meglio senza vecchie schede piuttosto che senza posta ma va beh...!
 :sbat:

Offline gialloporpora

  • サンドロ
  • Moderatore
  • Post: 10806
    • Il blog che non c'è
Re: Sostituire sessionstore.json per ripristinare vecchie sessioni
« Risposta #11 il: 27 Aprile 2014 13:02:23 »
Immaginavo fosse una qualche versione di VB, il Visual Basic di Microsoft le regex le ha, io però non lo ho mai usato. Non credo esista un linguaggio moderno di programmazione che non abbia le regex. Però, i linguaggi di programmazione come C e VB sono più adatti per scrivere applicazioni che non per fare piccoli programmini di utilità. Python, Perl o roba del genere sono più facili da usare e si ottengono molti più risultati e senza imprecare a dover gestire la memoria.
   
Se vuoi tentare:
Recovering files after chkdsk has removed them - Microsoft Community
Citazione
You can look at the root of the C:\ drive for a folder named Found.xxx (where xxx is some numbers starting with zero). Inside will be files called Filexxxx.CHK (where xxxx is some number starting with zero). Sometimes these files can be recovered (made useful) and sometimes they are corrupted. The best thing to do is to retrieve the files from your backup. If you don't have backups, then you can try data recovery software. I also suggest you test the hard drive because it sounds like it may be failing.

a me una volta è riuscito di recuperare un file, un'altra no, quindi incrocia le dita.


Offline Wiccio

  • Post: 50
    • Refusi Refugium Peccatorum
Re: Sostituire sessionstore.json per ripristinare vecchie sessioni
« Risposta #12 il: 28 Aprile 2014 21:43:00 »
Eheh, mi piacerebbe saperne di più sui linguaggi di programmazione ma ciò richiede tempo... risorsa della quale sento maggiormente la mancanza! :(

Grazie per la dritta sul recupero dei file post-chkdsk, tentare non nuoce, ma purtroppo non ho nessuna cartella Found.xxx (dove xxx indica numeri partendo dallo zero). E' andata così, pace!

E grazie ancora per tempo, disponibilità e gentilezza. :)

Offline gialloporpora

  • サンドロ
  • Moderatore
  • Post: 10806
    • Il blog che non c'è
Re: Sostituire sessionstore.json per ripristinare vecchie sessioni
« Risposta #13 il: 28 Aprile 2014 22:00:00 »
Prego :-)
Prima di abbandonare, prova a vedere che non sia una cartella nascosta.

0 Utenti e 1 Visitatore stanno visualizzando questo topic.