Valutazione discussione:
  • 0 voto(i) - 0 media
  • 1
  • 2
  • 3
  • 4
  • 5
creare template html per instbot phyton
OK, allora forse conviene aspettare un aggiornamento del programma.
Mattia!
Cita messaggio
(24/11/2020 13:06)Mattia Ha scritto: Per togliere gli apici ai valori in JSON delle configurazioni, devi aggiungere dopo:
Codice PHP:
chmod($yml0755); 

Questo pezzo di codice (che non ho testato):
Codice PHP:
$yml_content file_get_contents($yml);
foreach (array(
    
'tag_blacklist',
    
'unwanted_username_list',
    
// Qui vanno aggiunte tutte le configurazioni in JSON
) as $v) {
    
$yml_content preg_replace('/'.$v.': \'\[(.*)\]\'/'$v.': [$1]'$yml_content);
}
$f fopen($yml'w');
fwrite($f$yml_content);
fclose($f); 

Nel secondo caso sembrerebbe al programma non piaccia qualche valore che dovrebbe essere in JSON (i valori tra parentesi quadre o graffe).

Applicando questa modifica mi risolve il problema degli apici per tag_blacklistunwanted_username_list, ma non per tag_list e comment_list.
Inoltre ho notato che alla fine del config stampa 3 puntini "..." che non capisco da dove prenda:
Citazione:tag_list: '["tag1","tag2"]'

follow_per_run: 10

unfollow_per_run: 0

comment_list: '[["commento1","commento2"]]'
...
Ho anche notato che copiando un config.yml e compilandolo con un account, pur non avendo la stringa del db tra le sue istruzioni, me lo genera comunque. Quindi, probabilmente, la stringa di creazione del db probabilmente si può rimuovere da instascript.php.

Infine, non ho trovato nessuna soluzione per gli errori di json che vengono stampati quando provo ad avviare il bot, tu sei riuscito a cercare qualcosa?
Cita messaggio
(28/11/2020 20:48)Chandler Ha scritto:
(24/11/2020 13:06)Mattia Ha scritto: Per togliere gli apici ai valori in JSON delle configurazioni, devi aggiungere dopo:
Codice PHP:
chmod($yml0755); 

Questo pezzo di codice (che non ho testato):
Codice PHP:
$yml_content file_get_contents($yml);
foreach (array(
    
'tag_blacklist',
    
'unwanted_username_list',
    
// Qui vanno aggiunte tutte le configurazioni in JSON
) as $v) {
    
$yml_content preg_replace('/'.$v.': \'\[(.*)\]\'/'$v.': [$1]'$yml_content);
}
$f fopen($yml'w');
fwrite($f$yml_content);
fclose($f); 

Nel secondo caso sembrerebbe al programma non piaccia qualche valore che dovrebbe essere in JSON (i valori tra parentesi quadre o graffe).

Applicando questa modifica mi risolve il problema degli apici per tag_blacklistunwanted_username_list, ma non per tag_list e comment_list.

Viene risolto il problema solo per "tag_blacklist" e "unwanted_username_list", perché nello script ho inserito soltanto quelli.
Le configurazioni mancanti vanno al posto del commento:
Codice PHP:
// Qui vanno aggiunte tutte le configurazioni in JSON 


(28/11/2020 20:48)Chandler Ha scritto: Inoltre ho notato che alla fine del config stampa 3 puntini "..." che non capisco da dove prenda:
Citazione:tag_list: '["tag1","tag2"]'

follow_per_run: 10

unfollow_per_run: 0

comment_list: '[["commento1","commento2"]]'
...

In tre puntini finali sono un comando opzionale dei file YAML che stabiliscono la fine del file, quindi non sono un problema.


(28/11/2020 20:48)Chandler Ha scritto: Ho anche notato che copiando un config.yml e compilandolo con un account, pur non avendo la stringa del db tra le sue istruzioni, me lo genera comunque. Quindi, probabilmente, la stringa di creazione del db probabilmente si può rimuovere da instascript.php.

Forse il programma in Python crea in automatico un database con lo stesso nome dell'username?


(28/11/2020 20:48)Chandler Ha scritto: Infine, non ho trovato nessuna soluzione per gli errori di json che vengono stampati quando provo ad avviare il bot, tu sei riuscito a cercare qualcosa?

Per questo problema ho fatto solo una ricerca veloce, perché, da ciò che avevi scritto, avevo capito che fosse un problema del programma riconosciuto e che sarebbe stato risolto nelle prossime versioni.
Mattia!
Cita messaggio
Ho risolto con gli apici seguendo le tue indicazioni.
Ho rimosso la creazione del database ed effettivamente, quando provo ad eseguire il bot, viene generato il db automaticamente.

Resterebbe risolvere quegli errori quando si avvia il bot, fin ora non ho trovato soluzione.
Cita messaggio
Se gli errori sono rimasti quelli dell'esecuzione con il file di configurazione base, sembrerebbe che ci sia un valore JSON formattato non correttamente.
Il file di configurazione base com'è fatto?
Mattia!
Cita messaggio
così:
Codice:
---
login: "YOUR_USERNAME"
password: "YOUR_PASSWORD"

start_at_h: 0
start_at_m: 0
end_at_h: 23
end_at_m: 59
window_check_every: 60

debug: 1 # put 0 if you don't want to get debug messages
user_agent: "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:68.0) Gecko/20100101 Firefox/68.0"

tag_list: ["cute", "follow4follow", "f4f"]
tag_blacklist: ["sex", "porno"]

like_per_run: 50
max_like_for_one_tag: 30
media_min_like: 20
media_max_like: 100
like_followers_per_run: 20

unlike_per_run: 0
time_till_unlike: 259200

follow_per_run: 40
follow_time: 259200
follow_attempts: 2
user_min_follow: 10
user_max_follow: 30

unfollow_per_run: 199
unfollow_break_min: 3
unfollow_break_max: 17
unfollow_selebgram: false
unfollow_probably_fake: true
unfollow_inactive: true
unfollow_recent_feed: false
unfollow_whitelist: []

unwanted_username_list: ["free", "travel", "shop", "store", "sex", "online"]
comments_per_run: 0
comment_list: [
        ["this", "the", "your"],
        ["photo", "picture", "pic", "shot", "snapshot"],
        ["is", "looks", "feels", "is really"],
        [
            "great",
            "super",
            "good",
            "very good",
            "good",
            "wow",
            "WOW",
            "cool",
            "GREAT",
            "magnificent",
            "magical",
            "very cool",
            "stylish",
            "beautiful",
            "so beautiful",
            "so stylish",
            "so professional",
            "lovely",
            "so lovely",
            "very lovely",
            "glorious",
            "so glorious",
            "very glorious",
            "adorable",
            "excellent",
            "amazing",
        ],
        [".", "..", "...", "!", "!!", "!!!"],
    ]
Cita messaggio
Guardando il file l'unico possibile errore di formattazione che vedo è la virgola in più in "comment_list" alla fine della riga:
Codice:
[".", "..", "...", "!", "!!", "!!!"],

Dovresti provare a eliminare quella virgola e verificare se così funziona.

Se continua a non funzionare, dovresti provare a cancellare tutte le configurazioni in JSON (quelle tra parentesi quadre come, per esempio, "tag_list", "tag_blacklist", ecc.) e verificare se dà ancora errore.
Poi, se non dà errore senza configurazioni in JSON, dovresti inserire una configurazione alla volta finché trovi quella che fa uscire l'errore.
Mattia!
Cita messaggio
Ciao Mattia,
senza fare le modifiche da te indicate l'errore è cambiato in questo:
Citazione:Traceback (most recent call last):
File "/usr/local/bin/instabot-py", line 8, in <module>
sys.exit(main())
File "/usr/local/lib/python3.6/dist-packages/instabot_py/__main__.py", line 357, in main
bot = InstaBot(config=config)
File "/usr/local/lib/python3.6/dist-packages/instabot_py/instabot.py", line 219, in __init__
self.login()
File "/usr/local/lib/python3.6/dist-packages/instabot_py/instabot.py", line 306, in login
csrf_token = re.search('(?<="csrf_token":")\\w+', r.text).group(0)
AttributeError: 'NoneType' object has no attribute 'group'
e anche provando a cancellare tutte l configurazioni in json l'errore resta lo stesso. (Probabilmente perchè non è più un errore di json)

Cosa ne pensi?
Cita messaggio
Sì, non si tratta più di un errore di un JSON non corretto.
Guardando il codice sembrerebbe che la procedura di login di Instagram sia cambiata e non viene più restituito il token CSRF come veniva fatto in precedenza. Se il problema è questo, dovrebbe essere corretto in una nuova versione di instabot-py.
Mattia!
Cita messaggio
intanto, cercando in giro, ho trovato questa istruzione che ho provato ad applicare, ed effettivamente apportando quella modifica mi torna all'errore del json. A questo punto ho provato a cancellare tutte le configurazioni json (con parentesi quadre), ma continua a darmi lo stesso errore.

Speriamo in un aggiornamento, ma se non dovesse arrivare vorrei comunque provare a trovare una soluzione.

Grazie
Chand
Cita messaggio
Nella soluzione proposta viene commentata la parte relativa al token CSRF, così non viene eseguita.
Prova a pubblicare qui il file di configurazione attuale (naturalmente censurando eventuali password e dati privati).
Mattia!
Cita messaggio
Eccolo:
Codice:
---
start_at_h: 0
start_at_m: 0
end_at_h: 23
end_at_m: 59
window_check_every: 60
max_like_for_one_tag: 30
media_min_like: 20
media_max_like: 100
like_followers_per_run: 20
unlike_per_run: 0
time_till_unlike: 259200
follow_time: 259200
follow_attempts: 2
user_min_follow: 10
user_max_follow: 30
unfollow_break_min: 3
unfollow_break_max: 17
unfollow_selebgram: false
unfollow_probably_fake: true
unfollow_inactive: true
unfollow_recent_feed: false
unfollow_whitelist: []
comments_per_run: 30
tag_blacklist: ["sex","porno"]
unwanted_username_list: ["free","travel","shop","store","sex","online"]
login: username
password: password
like_per_run: 40
tag_list: ["tag1","tag2"]
follow_per_run: 10
unfollow_per_run: 0
comment_list: '[["commento1","commento2"]]'
...
Cita messaggio
In comment_list ci sono degli apici di troppo.
Dovrebbe essere:
Codice:
comment_list: [["commento1","commento2"]]
Mattia!
Cita messaggio
provato, ma continuo ad ottenere l'errore json Sad
Cita messaggio


Discussioni simili
Discussione Autore Risposte Letto Ultimo messaggio
  script per generazione immagine da template Chandler 135 278.148 18/07/2015 08:19
Ultimo messaggio: Mattia

Vai al forum:


Utenti che stanno guardando questa discussione: 1 Ospite(i)