Comment ouvrir un dossier de windows en cliquant sur un lien sur une page HTML à l'aide de Python
Je suis en train d'écrire le programme suivant :
***import os
filepath=r'C:\TestData\openfolder.html'
abc=open(filepath,'w')
abc.writelines('<html><head></head><body>')
abc.writelines('<a href="os.startfile(filepath)">First Link</a>\n')
abc.writelines('</body></html>')***
Ce que je veux faire est que si je clique sur le Premier Lien sur un navigateur, je devrais être en mesure d'ouvrir le dossier a chemin "Chemin d'accès". os.startfile fonctionne parfaitement pour l'ouverture d'un dossier mais je ne sais pas comment la mettre à l'intérieur de cette un lien.
Merci.
Cette question n'est pas de relais pour python. Aussi, c'est une bonne idée de spécifier votre système d'exploitation de la solution diffère, même sur les différentes versions de Windows.
OriginalL'auteur jags | 2012-08-04
Vous devez vous connecter pour publier un commentaire.
Essayez d'utiliser l'URI avec
file:
régime commefile:///C:/TestData/openfolder.html
dans votre code html:Ici est article sur l'utilisation du fichier des Uri dans Windows.
UPD (extraction de commentaires): Chaque navigateur a sa propre façon de gérer ces urls. Au moins Internet Explorer 8 sous Windows 7 ouvre les liens dans l'Explorateur Windows, comme requis par les jags.
Enfin, pour les pages dynamiques, la serveur web est nécessaire. S'il est nécessaire de prendre un coup d'oeil à discussion sur la création de services web simples à l'aide de python.
Bien, merci de préciser le scénario de l'utilisation de ce que vous essayez de construire. Vous voulez avoir une certaine dynamique à une page web avec des liens vers vos dossiers locaux, à droite? Et puis vous allez ouvrir que les liens et les afficher dans l'explorateur?
De plus, j'ai juste vérifié Internet Explorer 8 sous fraîchement installé Windows 7 Home Basic et il ouvre le fichier: Url dans Windows Explorer n'est pas en lui-même.
Merci beaucoup Dair. Oui, il fonctionne dans Internet Explorer. Je suis parti avec 1 seul problème: le lien à l'intérieur href n'est pas statique. C'est différent pour les différents fichiers. Donc, si je spécifie newpath=r'file:\\\C:\Nouveau_dossier\Engineering' et Si je veux l'utiliser à l'intérieur href comme <a href="newpath">Lien vers des données de test</a>, ce ne sera pas en mesure d'accéder à newpath de données. Si vous pouvez m'aider à fournir dyanamic lien (qui change) à l'intérieur de href , qui sera grande.
Pour la dynamique de génération de la page, vous devez utiliser le web service. Ici, par exemple, une discussion sur simple python serveur web de mise en œuvre: stackoverflow.com/questions/415192/... .
OriginalL'auteur Vladimir
Vous ne pouvez pas. En cliquant sur un lien vers un fichier dans un navigateur ne sera pas lancer l'application associée à ce type de fichier sur le système d'exploitation. Vous pouvez apparemment certains des trucs funky avec JavaScript pour lancer notamment les types de fichiers avec des applications particulières (voir ici: http://forums.devshed.com/asp-programming-51/launching-ms-word-to-open-file-from-a-hyperlink-55714.html) mais en dehors de cela, le navigateur web n'est pas le navigateur de fichiers.
OriginalL'auteur aychedee
Remplacer
FOLDER_PATH
avec le chemin du dossier que vous souhaitez ouvrir dans l'explorateur.Ne fonctionne pas windows firefox 44
OriginalL'auteur Alain
Alain la réponse de travaux.
< " a href="FOLDER_PATH" target="_explorer.exe">Texte du Lien< " />
J'ai enlevé les marques de graduation au début et à la fin, et constaté qu'il travaille dans
Internet Explorer ouvre une fenêtre de l'Explorateur Windows
Firefox (Windows et Linux), mais ouvre un nouvel onglet - même comme target="_blank"
Chrome ouvre un nouvel onglet dans Firefox
J'ai aussi remarqué que /et \ (en avant et en arrière des barres obliques) sont égaux dans les liens html - ils peuvent même être mélangés.
OriginalL'auteur Charles Young