USECASE: Je suis en train de lire le pdf d'URL, puis l'envoyer par FTPLire PDF et envoyer par FTP en Python
Je fonctionne comme:
def send_via_ftp(self, url, filename, ftp_site, username, password, directory):
import urllib2
try:
data = urllib2.urlopen(url)
except urllib2.URLError, e:
print "Failed to fetch content: %s" % e
return False
except urllib2.HTTPError, e:
print "HTTP ERROR: %s" % e
return False
return self.send_file_by_ftp(data, ftp_site, username, password, directory, filename)
------- -------------------------------------------------- --------------------
def send_file_by_ftp(self, data, ftp_site, username, password, directory, filename):
import ftplib
try:
remote_ftp_connection = ftplib.FTP(ftp_site)
except ftplib.all_errors as e:
print str(e)
return False
else:
remote_ftp_connection.login(username, password)
try:
if len(directory):
remote_ftp_connection.cwd(directory)
remote_ftp_connection.storbinary("STOR %s" % filename, data)
except ftplib.error_perm,e:
print str(e)
return False
else:
remote_ftp_connection.quit()
return True
Mon appel ressemble à: send_via_ftp ("http://url/ *** pdf", "XYZ.pdf", "ftp url 192.168.0.101", "XXXX", "YYYYY", "")
Le fichier a été créé avec succès dans le dossier FTP mais le contenu du fichier n'est pas écrit. Alors que je l'ouvre, il dit "Format Erreur: Pas un pdf ou corrompu". Quel pourrait être le problème? Un grand merci pour toute aide
Avez-vous essayé de le séparer: premier téléchargement, contrôler le fichier téléchargé, et envoyer le prochain? –
Maintenant, cela semble étrange ... Lorsque j'utilise Python Shell et exécutez la commande ci-dessus un par un, cela fonctionne bien ... Tout le monde sait pourquoi cela ne fonctionne pas dans le code ci-dessus? –