initial commit

This commit is contained in:
2026-03-24 07:17:48 +01:00
commit 371cbce202
147 changed files with 18244 additions and 0 deletions

113
diagnostic.py Normal file
View File

@@ -0,0 +1,113 @@
"""
Script de diagnostic pour tester la connexion à LibreHardwareMonitor
"""
import socket
import urllib.request
import sys
print("=" * 60)
print("DIAGNOSTIC DE CONNEXION À LIBREHARDWAREMONITOR")
print("=" * 60)
# Test 1: Résolution DNS de localhost
print("\n[1] Résolution DNS de 'localhost'...")
try:
ip = socket.gethostbyname('localhost')
print(f" ✅ localhost résolu en: {ip}")
except Exception as e:
print(f" ❌ Erreur: {e}")
# Test 2: Vérifier toutes les adresses pour localhost
print("\n[2] Toutes les adresses pour 'localhost'...")
try:
infos = socket.getaddrinfo('localhost', 8085)
for info in infos:
print(f"{info[0].name}: {info[4]}")
except Exception as e:
print(f" ❌ Erreur: {e}")
# Test 3: Connexion socket directe sur 127.0.0.1
print("\n[3] Test connexion socket sur 127.0.0.1:8085...")
try:
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.settimeout(5)
result = sock.connect_ex(('127.0.0.1', 8085))
sock.close()
if result == 0:
print(" ✅ Port 8085 ouvert sur 127.0.0.1")
else:
print(f" ❌ Port fermé (code: {result})")
except Exception as e:
print(f" ❌ Erreur: {e}")
# Test 4: Connexion socket directe sur localhost
print("\n[4] Test connexion socket sur localhost:8085...")
try:
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.settimeout(5)
result = sock.connect_ex(('localhost', 8085))
sock.close()
if result == 0:
print(" ✅ Port 8085 ouvert sur localhost")
else:
print(f" ❌ Port fermé (code: {result})")
except Exception as e:
print(f" ❌ Erreur: {e}")
# Test 5: Requête HTTP avec urllib (sans requests)
print("\n[5] Test HTTP avec urllib sur 127.0.0.1...")
try:
req = urllib.request.urlopen('http://127.0.0.1:8085/data.json', timeout=5)
data = req.read()
print(f" ✅ Réponse reçue! ({len(data)} bytes)")
print(f" Début: {data[:100]}...")
except Exception as e:
print(f" ❌ Erreur: {e}")
# Test 6: Requête HTTP avec urllib sur localhost
print("\n[6] Test HTTP avec urllib sur localhost...")
try:
req = urllib.request.urlopen('http://localhost:8085/data.json', timeout=5)
data = req.read()
print(f" ✅ Réponse reçue! ({len(data)} bytes)")
except Exception as e:
print(f" ❌ Erreur: {e}")
# Test 7: Requête avec requests (si disponible)
print("\n[7] Test HTTP avec requests sur 127.0.0.1...")
try:
import requests
resp = requests.get('http://127.0.0.1:8085/data.json', timeout=5)
print(f" ✅ Réponse reçue! Status: {resp.status_code}, {len(resp.content)} bytes")
except ImportError:
print(" ⚠️ Module requests non installé")
except Exception as e:
print(f" ❌ Erreur: {e}")
# Test 8: Requête avec requests sur localhost
print("\n[8] Test HTTP avec requests sur localhost...")
try:
import requests
resp = requests.get('http://localhost:8085/data.json', timeout=5)
print(f" ✅ Réponse reçue! Status: {resp.status_code}")
except ImportError:
print(" ⚠️ Module requests non installé")
except Exception as e:
print(f" ❌ Erreur: {e}")
print("\n" + "=" * 60)
print("RECOMMANDATION:")
print("=" * 60)
print("""
Si les tests 3-4 échouent mais que le navigateur fonctionne:
→ Vérifiez le pare-feu Windows (autorisez Python)
Si les tests avec 127.0.0.1 réussissent mais localhost échoue:
→ Problème IPv6, utilisez 127.0.0.1 dans la config
Si tout échoue sauf le navigateur:
→ Un proxy ou antivirus bloque peut-être Python
→ Essayez de désactiver temporairement l'antivirus
""")
input("\nAppuyez sur Entrée pour fermer...")