|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Thierry Inscription : février 2013 Messages : 5 ![]() |
Bonjour,
Je débute en python et je suis quelque peu perdu ![]() Comment puis-je récuperer le nom du dernier fichier fichier écrit dans un répertoire ? Un peu comme le findfirst, findnext et findlast d'autres langages... Et comment tester si un chemin existe, non pas en local sur le DD, mais sur le web ? par exemple pour savoir si http://www.monsite.com/toto.jpg ou http://192.168.1.255/image.jpg existe bien ? ou est bien en ligne (pas de rupture de liaison) ? Merci. |
|
|
00
|
|
|
#2 | ||
|
Expert Confirmé Sénior
![]() Inscription : juin 2008 Messages : 3 696 ![]() |
Salut,
Citation:
Mais je laisserais d'autres confirmer cela plutôt que de vous montrer comment çà peut se programmer "simplement": vous risqueriez d'être encore plus perdu... Citation:
On peut ouvrir l'adresse http://www.monsite.com/toto.jpg à partir de son navigateur. Mais derrière, c'est l'ouverture d'une connection TCP/IP vers le host: www.monsite.com suite d'une requête HTTP avec par exemple la méthode GET sur l'URL "/toto.jpg". S'il n'existe pas, la réponse contiendra le status 404 not found, sinon la répondre aura un "contenu" mime encodé dans le corps de la réponse que le navigateur affichera une fois récupéré... Que l'URL soit un fichier (ou pas) dépendra de ce que voudra bien retourner le serveur HTTP. Vous avez ensuite des applications à la sharepoint construites sur un protocole WebDAV (qui vient au dessus d'http) qui permettront d'accéder à des répertoires distants (via HTTP) et d'effectuer des opérations sur ses fichiers comme s'il s'agissait d'un répertoire local. Dans ce cas, on utilise un client/server WebDAV. Et si vous voulez le programmer avec Python, il faut commencer par lire la documentation du produit. Hmm - W
__________________
Architectures Post-Modernes |
||
|
|
00
|
|
|
#3 | ||
|
Membre confirmé
![]() Inscription : avril 2007 Messages : 239 ![]() |
Bonjour,
Pour avoir le nom du dernier fichier modifié je ferais comme ceci: Code :
http://docs.python.org/2/library/os.path.html Alex |
||
|
|
10
|
|
|
#4 | ||
|
Candidat au titre de Membre du Club
![]() Inscription : février 2013 Messages : 8 ![]() |
Pour savoir si une ressource web est accessible, il faut essayer de la récupérer, ici à l'aide de urllib si tu utilises python 2.x (urllib2 pour python 3.x, ne fonctionne pas de la même manière).
Code :
J'utilise personnellement la librairie Requests qui nettement plus intuitive à utiliser, mais qu'il faut installer |
||
|
|
00
|
|
|
#5 | ||||
|
Expert Confirmé Sénior
![]() Inscription : juin 2008 Messages : 3 696 ![]() |
Salut,
Je suis allé pomper ce code dans les tutos DELPHI Code :
Code :
os.listdir retourne une "list" des noms de fichiers dans "path" rangés par ordre alphabétique. "list" étant un "itérable" pas besoin de le construire "explicitement" ce que font FindFirst, FindNext,... - W
__________________
Architectures Post-Modernes |
||||
|
|
00
|
|
|
#6 |
|
Candidat au titre de Membre du Club
![]() Inscription : février 2013 Messages : 8 ![]() |
Toujours sympa les fonctions récursives
|
|
|
00
|
|
|
#7 |
|
Invité de passage
![]() Thierry Inscription : février 2013 Messages : 5 ![]() |
Bonjour,
Merci pour les différentes réponses, je me suis fait un petit milshake de l'ensemble Cela m'a permi d'avancer un peu. ![]() Mais finalement je vois que je ne coupe pas à utiliser la fonction TRY que je ne maitrise pas encore, mais ça va venir ! Par contre j'ai un autre souci, il semble que les chemins ne peuvent excéder un certain nombre de caractères 70 environs et la ça ne cadre plus avec les chemins "windaube" ou internet qui vont jusqu'à 255... Apparement ce serait la variable "string" qui n'en passe pas plus ? Merci encore de votre aide. |
|
|
00
|
|
|
#8 | |
|
Expert Confirmé Sénior
![]() Inscription : juin 2008 Messages : 3 696 ![]() |
Citation:
- W
__________________
Architectures Post-Modernes |
|
|
|
00
|
|
|
#9 | ||
|
Candidat au titre de Membre du Club
![]() Inscription : février 2013 Messages : 8 ![]() |
Pour te convaincre qu'il n'y a pas de limite du genre de celle dont tu parles a la longueur d'un string, essaie dans une console:
Code :
|
||
|
|
00
|
|
|
#10 |
|
Invité de passage
![]() Thierry Inscription : février 2013 Messages : 5 ![]() |
Bon, je me suis fait avoir avec les / et \ visiblement !
>>> Chem_img='C:\Documents and Settings\HP_Propriétaire\Mes documents\DCS-2121\Rasp\130221' >>> print Chem_img C:\Documents and Settings\HP_Propriétaire\Mes documents\DCS-2121\RaspX221 et >>> Chem_img='C:/Documents and Settings/HP_Propriétaire/Mes documents/DCS-2121/Rasp/130221' >>> print Chem_img C:/Documents and Settings/HP_Propriétaire/Mes documents/DCS-2121/Rasp/130221 Donc un simple copier/collé depuis windaube et ça ne marche pas ! Je ne sais pas s'il est possible d'inhiber cette fonction d'autoconvertir les \xx dans une chaine sous Python ? A+ |
|
|
00
|
|
|
#11 |
|
Expert Confirmé Sénior
![]() Inscription : juin 2008 Messages : 3 696 ![]() |
Salut,
Python hérite du langage C l'interprétation du \ comme "quote" dans les littéraux de type string. Dans la chaîne de caractères: Code :
'\Documents and Settings\HP_Propriétaire\Mes documents\DCS-2121\Rasp\130221'
Pour éviter çà, le r annihile: Code :
s = r'\Documents and Settings\HP_Propriétaire\Mes documents\DCS-2121\Rasp\130221'
Code :
s = '\\Documents and Settings\\HP_Propriétaire\\Mes documents\\DCS-2121\\Rasp\\130221'
__________________
Architectures Post-Modernes |
|
|
00
|
Copyright © 2000-2013 - www.developpez.com