Daniele Varrazzo ha scritto:
Salve a tutta la lista,
una di queste sere mi sono imbattuto nel visualizzare il codice sorgente
di qualche applicazione, e dopo 30 secondi ho deciso di scrivermi già il
mio primo programmino.
Bello anzi bellissimo a dir poco stupendo.
In 11 righe mi sono evitato un mare di lavoro.
Ho deciso di creare una nuova applicazione e questa volta ho deciso di
creare uno spider che avevo fatto in c# in windows e rifarlo in python e
devo dire che tutto funziona alla grande.
Il mio unico problema sta nel fatto che vorrei velocizzare il programma
e quindi renderlo multithreading impostando sempre da riga di comando il
numero di thread che vorrei fare. Mi potete dare qualche consiglio???

Grazie a tutti per il lavoro che fate.

Ciao,

Come già spiegato anche da Valentino, non sempre "multithreading" implica
"più veloce". Ma nel tuo caso è così, caschi bene :)

In fondo al messaggio attacco uno script che avevo scritto un po' di tempo
fa: usa diversi thread per scaricare una serie di file. Non è uno spider
perché la lista di cose da scaricare va specificata all'inizio, ma penso sia
chiara la modifica da effettuare: quando un'istanza di Job trova una url
"interessante", deve aggiungerla alla lista "DownloadManager.urls" dei
compiti da svolgere. Dovresti modificare la signature di Job.__init__ in
modo che possa ricevere un puntatore a tutto il download manager (che nome
borioso!) anziché al solo callback che notifica dell'avvenuto download: io
aggiungerei un metodo DownloadManager.add_job(...) che aggiunga il nuovo job
alla lista rispettando il lock.

"from util import get_logger" non funzionarà: usa "import logging;
logging.getLogger" al suo posto. Tutto il resto dovrebbe funzionare.

Spero ti serva di "ispirazione": ci ho messo pochi minuti a scriverlo, ha
fatto il suo porco lavoro e in effetti il fatto che in Python si scriva un
download manager multi-thread in meno di 100 righe fa la sua figura :)

Divertiti!

Scusatemi ragazzi....sono proprio una schiappa con questo linguaggio.... forse perchè ho anche poche ore di sonno....Intanto mi scuso con tutte le persone che mi avevano cercato di dare una mano ed io incosciamente non avevo capito.... Ringrazio chi mi abbia passato quello script (anche se non ho capito un gran chè) quel programmino che avevo creato stupidissimo sono riuscito a farlo funzionare... ma ho capito anche che in python esistono funzioni, definizioni ecc... di cui ancora non capsco niente quindi è meglio che prima do una guardata in giro...

RINGRAZIO TUTTI VOI!!!!

Angelo
_______________________________________________
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python

Rispondere a