Skrypnyk81
Profilo di
Nome | Skrypnyk81 |
---|---|
Indirizzo email | n/a |
Messaggi | 7 |
-
- 2018-05-17 21:52:55
- Re: Spider dal libro Marco Beri
- Forum >> Principianti
- Ciao.
Dopo la tua correzione lo script funziona.
Ho ancora un problema dal libro, volevo chiedere, perché sono un nuovo nel forum. Posso postare qui il problema seguente ho devo aprire una nuova discussione?
Grazie ancora, anche se un pò in ritardo
-
- 2018-05-17 21:44:29
- Re: creare lista da input
- Forum >> Principianti
- Ciao.
Non sono grande esperto. Il tuo codice funziona senza le ultime parentesi quadre.nome=input("Inserire nome lista") nome_lista=nome
Però non capisco perché prima crei il "nome" e poi lo assegni al "nome_lista". Puoi farlo direttamente cosinome_lista = input("Inserisci nome lista:")
Penso che cosi si crea la stringa, la lista ha più elementi dentro. Come ho scritto sopra non sono grande esperto.
Spero di essere d'aiuto.
-
- 2016-12-28 20:58:29
- Spider dal libro Marco Beri
- Forum >> Principianti
- Salve.
Leggendo il libro di @Marco Beri "Python" sono arrivato ai esempi degli semplici spider web che usano modulo threading e multiprocessing
Allora, nel primo esempio script funziona (penso), però non mi salva i siti trovati
Ecco il codice:import threading, urllib.request, time urls = ["www.ubuntu.com", "www.linux.org", "www.python.org"] class esplora(threading.Thread): def __init__(self, url): threading.Thread.__init__(self) self.url = url self.status = -1 def run(self): print("Sto leggendo {0}".format(self.url)) urllib.request.urlretrieve("http://{0}".format(self.url)) print("Ho letto e salvato {0} alle ore {1}".format(self.url, time.strftime("%H:%M:%S"))) for url in urls: esplora_url = esplora(url) esplora_url.start()
Eseguendo il primo script dalla riga di comando, mi trova i siti citati però non li salva come nel libro(Allego immagine spider).
Con secondo esempio spider_multi.py mi trovo già errori nell'esecuzione.
Ecco il codice:from multiprocessing import Pool import urllib.request, time, os def esplora(url): print("Sto leggendo {0} (proc:{1})".format((url, os.getpid()))) urllib.request.urlretrieve("http://{0}".format(url), url) print("Ho letto e salvato {0} alle ore {1}".format(self.url, time.strftime("%H:%M:%S"))) if __name__ == '__main__': p = Pool(3) p.map(esplora, ["www.ubuntu.com", "www.linux.com", "www.python.org"])
Con questo script mi solleva un sacco di errori:
multiprocessing.pool.RemoteTraceback: """ Traceback (most recent call last): File "C:\Python3\lib\multiprocessing\pool.py", line 119, in worker result = (True, func(*args, **kwds)) File "C:\Python3\lib\multiprocessing\pool.py", line 44, in mapstar return list(map(*args)) File "C:\Users\Murchik\Prova\spider_multi.py", line 4, in esplora print("Sto leggendo {0} (proc:{1})".format((url, os.getpid()))) IndexError: tuple index out of range """ The above exception was the direct cause of the following exception: Traceback (most recent call last): File "C:/Users/Murchik/Prova/spider_multi.py", line 9, in <module> p.map(esplora, ["www.ubuntu.com", "www.linux.org", "www.python.org"]) File "C:\Python3\lib\multiprocessing\pool.py", line 260, in map return self._map_async(func, iterable, mapstar, chunksize).get() File "C:\Python3\lib\multiprocessing\pool.py", line 608, in get raise self._value IndexError: tuple index out of range
Pure per questo esempio allego immagine di esecuzione nel cmd.exe
Forse sbaglio con gli spazi o posizioni delle righe(leggo il libro digitale) che capita spesso a me
Grazie in anticipo e buone feste .
-
- 2016-12-05 09:22:55
- Re: Python facebook
- Forum >> Principianti
- Allora. Non sono grande esperto di Python e OSX(l'ho installato in macchina virtuale).
Procediamo sono andato sul sito e mi sono registrato, per capire come installare facebook sdk sono passato a questa pagina
https://facebook-sdk.readthedocs.io/en/latest/install.html
In osx ho aperto terminale, dal sito ho copiato il comando.
pip install -e git+https://github.com/mobolic/facebook-sdk.git#egg=facebook-sdk
Dopo installazione pip mi ha chiesto di aggiornare, un altro comando in terminalepip install --upgrade pip
Dopo ho inserito altro comando dal sito in terminalepip install facebook-sdk
Dopo installazione mi ha confermato installazione del SDK e percorsoSkrypnyks-Mac:~ skrypnykyuriy$ pip install facebook-sdk Requirement already satisfied: facebook-sdk in ./src/facebook-sdk Requirement already satisfied: requests in ./miniconda3/lib/python3.5/site-packages (from facebook-sdk)
Ecco installato, dopo non lo so come aprirlo e far funzionare.
Spero di essere d'aiuto.
-
- 2016-12-03 22:02:29
- Re: Python facebook
- Forum >> Principianti
- Prova 'sudo bash' nel terminale. cosi terminale diventa con permessi di amministratore.
Questo ho trovato su inet
If you need a root shell, you can always use sudo tcsh or sudo bash
Ciao
-
- 2016-12-01 19:33:27
- Re: Non riesco a scatenare un errore
- Forum >> Principianti
- Ciao Marco.
Grazie per correzione, adesso mi funzione come nel libro .
A dir vero non aspettavo che mi risponde direttamente autore del libro, sono emozionato tanto. Come nei giochi che costruisci una torre sale difesa. Anche per me è salita la voglia di imparare Python al livelli massimi .
Comunque ho salvato intero codice nel Notepad++, per non riscriverlo ogni giorno. Ho notato una cosa che forse aiuta a qualcuno come me capire meglio se qualcosa non va nelle classi.
Nell'immagine(allegata) giusto tutta la colona si illumina meta rossa collegata alla classe.
Nell'immagine sbagliata si illuminavano solo ultime tre righe, come ho capito non erano collegati a tutta la classe.
Bene questo problema è stata risolta passo alla prossima nel nuovo post.
Buon coding a tutti.
-
- 2016-11-30 21:50:31
- Non riesco a scatenare un errore
- Forum >> Principianti
- Salve ragazzi.
Da un mesetto che ho iniziato a imparare Python 3. Ho comprato il libro "Python" di Marco Beri e ho preso il "Programmazione in Python" di Kenneth in biblioteca(più avanti ho intenzione di comprarlo).
Nel libro di Beri sto provando tutti gli esempi nel IDE. Sono arrivato ad un esempio con classe di Verdura. Che deve scatenare un errore per i grassi nella verdura(carote) invece il mio codice gli assegna a carote(che naturalmente non possono avere grassi :sick. Ho provato di copiarli dal libro, usare nel IDE, PyCharm(che mi ha suggerito qualche modifica, ma non funziona lo stesso)...
Vi posto il codice sotto che ho inserito nel IDE.>>>class Cibo: """Un esempio di classe per gestire i cibi""" def __init__(self, proteine=0, carboidrati=0, grassi=0): self.proteine = proteine self.carboidrati = carboidrati self.grassi = grassi >>> pasta = Cibo(proteine=12, carboidrati=72, grassi=1) >>> def calcolaCalorie(self): return (self.proteine * 4 + self.carboidrati * 4 + self.grassi * 9) >>> Cibo.calcolaCalorie = calcolaCalorie >>> print(pasta.calcolaCalorie()) 345 >>> class Verdura(Cibo): def __init__(self, proteine=0, carboidrati=0): self.grassi = 0 self.proteine = proteine self.carboidrati = carboidrati >>> melanzane = Verdura(proteine=1.5, carboidrati=2.5) >>> print(melanzane.calcolaCalorie()) 16.0 >>> class Verdura(Cibo): def __init__(self, proteine=0, carboidrati=0): Cibo.__init__(self, proteine = proteine, carboidrati = carboidrati, grassi = 0) >>> Cibo.calorie = property(calcolaCalorie) >>> melanzane.calorie 16.0 >>> pasta.calorie 345 >>> class Verdura(Cibo): def __init__(self, proteine=0, carboidrati=0): self.proteine = proteine self.carboidrati = carboidrati self.grassi = 0 def getGrassi(self): return 0 def setGrassi(self, grassi): if grassi > 0: raise Exception("Le verdure non hanno grassi") grassi = property(getGrassi, setGrassi) >>> carote = Verdura(1, 7) >>> carote.calorie 32 >>> carote.grassi 0 >>> carote.grassi = 100
Con ultimo comando deve scatenare un errore
Traceback (most recent call last): File "< pyshell# 161 >", line 1, in < module > carote.grassi = 100 File "< pyshell# 155 >", line 10, in setGrassi raise Exception(" Le verdure non hanno grassi") Exception: Le verdure non hanno grassi
Invece con comandocarote.grassi = 100
mi assegna 100 grassi alle carote.>>> carote.grassi 100 >>>
Grazie e buon coding a tutti!!!
--- Ultima modifica di Skrypnyk81 in data 2016-11-30 22:21:38 ---