Ping d'Url à caractère spéciaux
Bonjour,
je souhaiterais créer un script permettant de tester (ping) des adresses de site pour vérifier si ces adresses fonctionnent toujours.
je travaille en tant que géomaticien dans une collectivité et nous souhaitons rajouter des flux wms d'autres structures sur nos cartes.
pour cela nous récupérons les flux via des url (http://www.sandre.eaufrance.fr/atlas...-0e0b0a2dc258&) qui comportent des caractères spéciaux.
Or j'ai remarqué que certains fournisseur de flux les suppriment sans que je puisse le voir. il me faut vérifier à chaque fois manuellement chaque flux.
j'essaye donc de développer un script permettant de pinger mes flux (url) pour voir si ils sont toujours actifs.
en cherchant, j'ai trouvé ce script q
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| import sys
import os
import platform
import subprocess
plat = platform.system()
scriptDir = sys.path[0]
hosts = os.path.join(scriptDir, 'hosts.txt')
hostsFile = open(hosts, "r")
lines = hostsFile.readlines()
if plat == "Windows":
for line in lines:
line = line.strip( )
ping = subprocess.Popen(
["ping", "-n", "1", "-l", "1", "-w", "100", line],
stdout = subprocess.PIPE,
stderr = subprocess.PIPE
)
out, error = ping.communicate()
print (out)
print (error)
for line in hosts:
print(line.encode("cp1252", errors='replace').decode("cp850"))
hostsFile.close() |
le soucis c'est que ce script ne reconnais pas les caractères spéciaux.
vous sauriez comment y remédier?
Merci