PDA

View Full Version : python copiare testo da ciclo for


Sasanta
06-02-2017, 10:11
ciao ragazzi nel mio programmino python ho un ciclo for in cui itero su dei tag online ma vorrei copiare il risultato finale su un documento esterno

trg = soup.find_all(["p","h1", "h2.mw-headline"])
s = open("giu.txt", "w")
for tag in trg:
print tag.get_text()

s.write(tag)

questa è una parte del programma, e funziona ma vorrei copiare il risultato finale del ciclo for sul documento giu.txt

Sasanta
06-02-2017, 15:25
con la stringa

s.write(tag)


scrivi effettivamente sul file.
ti manca però

s.close()


Prova a vedere se chiudendo il puntatore al file trovi le modifiche sul file stesso
no, nel file giu.txt non esce nulla e mi da questo errore:


Traceback (most recent call last):
File "C:\Users\Samuel\Desktop\crawer.py", line 16, in <module>
s.write(tag)
TypeError: expected a string or other character buffer object

Xfree
07-02-2017, 09:19
Perché tag non è una stringa, devi convertirla in stringa.