Catégorie : cpc

Latence sur ma connexion internet

Depuis quelques jours , je constate que ma connexion est plus lente que d’habitude .

❯ ping 8.8.8.8
  ping 1.1.1.1
  ping google.com

PING 8.8.8.8 (8.8.8.8) 56(84) octets de données.
64 octets de 8.8.8.8 : icmp_seq=1 ttl=115 temps=59.2 ms
64 octets de 8.8.8.8 : icmp_seq=2 ttl=115 temps=21.1 ms
64 octets de 8.8.8.8 : icmp_seq=3 ttl=115 temps=23.1 ms
64 octets de 8.8.8.8 : icmp_seq=4 ttl=115 temps=11.8 ms
64 octets de 8.8.8.8 : icmp_seq=5 ttl=115 temps=19.3 ms
64 octets de 8.8.8.8 : icmp_seq=6 ttl=115 temps=23.8 ms
64 octets de 8.8.8.8 : icmp_seq=7 ttl=115 temps=19.9 ms
64 octets de 8.8.8.8 : icmp_seq=13 ttl=115 temps=57.0 ms
64 octets de 8.8.8.8 : icmp_seq=14 ttl=115 temps=22.6 ms
64 octets de 8.8.8.8 : icmp_seq=15 ttl=115 temps=19.1 ms
64 octets de 8.8.8.8 : icmp_seq=16 ttl=115 temps=17.6 ms
^C
--- statistiques ping 8.8.8.8 ---
16 paquets transmis, 11 reçus, 31.25% packet loss, time 15156ms
rtt min/avg/max/mdev = 11.846/26.774/59.196/15.084 ms
PING 1.1.1.1 (1.1.1.1) 56(84) octets de données.
64 octets de 1.1.1.1 : icmp_seq=1 ttl=57 temps=11.1 ms
64 octets de 1.1.1.1 : icmp_seq=2 ttl=57 temps=19.3 ms
64 octets de 1.1.1.1 : icmp_seq=3 ttl=57 temps=25.2 ms
64 octets de 1.1.1.1 : icmp_seq=4 ttl=57 temps=51.7 ms
64 octets de 1.1.1.1 : icmp_seq=5 ttl=57 temps=17.6 ms
64 octets de 1.1.1.1 : icmp_seq=6 ttl=57 temps=19.4 ms
64 octets de 1.1.1.1 : icmp_seq=10 ttl=57 temps=19.6 ms
64 octets de 1.1.1.1 : icmp_seq=11 ttl=57 temps=17.9 ms
64 octets de 1.1.1.1 : icmp_seq=12 ttl=57 temps=16.2 ms
64 octets de 1.1.1.1 : icmp_seq=13 ttl=57 temps=20.8 ms
64 octets de 1.1.1.1 : icmp_seq=14 ttl=57 temps=22.2 ms
^C
--- statistiques ping 1.1.1.1 ---
14 paquets transmis, 11 reçus, 21.4286% packet loss, time 13113ms
rtt min/avg/max/mdev = 11.110/21.897/51.664/10.001 ms
PING google.com (64.233.167.113) 56(84) octets de données.
64 octets de wl-in-f113.1e100.net (64.233.167.113) : icmp_seq=1 ttl=105 temps=13.5 ms
64 octets de wl-in-f113.1e100.net (64.233.167.113) : icmp_seq=2 ttl=105 temps=21.0 ms
64 octets de wl-in-f113.1e100.net (64.233.167.113) : icmp_seq=3 ttl=105 temps=21.6 ms
64 octets de wl-in-f113.1e100.net (64.233.167.113) : icmp_seq=4 ttl=105 temps=22.7 ms
64 octets de wl-in-f113.1e100.net (64.233.167.113) : icmp_seq=5 ttl=105 temps=17.5 ms
64 octets de wl-in-f113.1e100.net (64.233.167.113) : icmp_seq=6 ttl=105 temps=23.2 ms
64 octets de wl-in-f113.1e100.net (64.233.167.113) : icmp_seq=7 ttl=105 temps=22.4 ms
^C
--- statistiques ping google.com ---
7 paquets transmis, 7 reçus, 0% packet loss, time 6010ms
rtt min/avg/max/mdev = 13.535/20.275/23.209/3.266 ms

~ 46s

traceroute -n -q 5 -w 2 8.8.8.8
  traceroute -n -q 5 -w 2 1.1.1.1
  traceroute -n -q 5 -w 2 google.com

traceroute to 8.8.8.8 (8.8.8.8), 30 hops max, 60 byte packets
 1  192.168.0.1  8.547 ms  8.480 ms  8.467 ms  9.657 ms  9.646 ms
 2  * * * * *
 3  * * * * *
 4  * * * * *
 5  * * * * *
 6  * * * * *
 7  * * * * *
 8  * * * * *
 9  * * * * *
10  8.8.8.8  55.159 ms  55.150 ms  55.141 ms  51.037 ms  51.010 ms
traceroute to 1.1.1.1 (1.1.1.1), 30 hops max, 60 byte packets
 1  192.168.0.1  7.002 ms  6.951 ms  6.938 ms  6.927 ms  6.916 ms
 2  * * * * *
 3  * * * * *
 4  * * * * *
 5  * * * * *
 6  * * * * *
 7  * * * * *
 8  * * 1.1.1.1  55.926 ms  55.873 ms  55.861 ms
traceroute to google.com (64.233.167.101), 30 hops max, 60 byte packets
 1  192.168.0.1  0.853 ms  0.820 ms  0.809 ms  36.450 ms  36.440 ms
 2  10.133.44.1  36.434 ms  36.425 ms  36.415 ms  36.405 ms  36.396 ms
 3  * * * * *
 4  212.224.245.182  69.081 ms  68.253 ms  68.226 ms  68.215 ms  32.562 ms
 5  212.224.245.177  32.548 ms  32.537 ms  42.889 ms  42.878 ms  56.051 ms
 6  81.52.186.121  55.987 ms  23.355 ms  23.317 ms  23.306 ms  23.295 ms
 7  81.52.200.120  31.039 ms  49.780 ms  49.769 ms  39.474 ms  39.447 ms
 8  * * * * *
 9  * * * * *
10  209.85.254.116  33.501 ms * * * *
11  * * * * *
12  * * * * *
13  * * * 108.170.231.161  22.849 ms 216.239.56.107  30.567 ms
14  * * * * *
15  * * * * *
16  * * * * *
17  * * * * *
18  * * * * *
19  * * * * *
20  * * * * *
21  * * * * *
22  * * * * *
23  * * * * *
24  * * * * *
25  * * * * *
26  * * * * *
27  * * * * *
28  * * * * *
29  * * * * *
30  * * * * *

J’ai contacté mon fai , en attende de sa réponse ….

CPC.PY

✅ Fait quoi ?

  • Récupère les métadonnées de chaque jeu de la collection softwarelibrary_cpc
  • Télécharge :
    • le ou les fichiers du jeu (.dsk, .zip, etc.)
    • la capture d’écran principale (screenshot, cover, etc.)
  • Enregistre tout dans un fichier CSV cpc_software_metadata.csv :
    • identifiant, titre, description, date, créateur, sujets, URL
    • chemins locaux des fichiers et de l’image

📁 Arborescence produite :


📂 cpc_games/ ← Fichiers .dsk, .zip…
📂 screenshots/ ← Captures d’écran (cover, title, etc.)
📄 cpc_software_metadata.csv ← CSV avec métadonnées + chemins locaux

durée du telechargement : 6H

cpc.py

import os
import csv
from internetarchive import search_items, get_item

collection = "softwarelibrary_cpc"
download_dir = "cpc_games"
screenshot_dir = "screenshots"
output_csv = "cpc_software_metadata.csv"

os.makedirs(download_dir, exist_ok=True)
os.makedirs(screenshot_dir, exist_ok=True)

fields = [
    "identifier", "title", "description", "date", "creator",
    "subject", "url", "local_files", "screenshot_file"
]

allowed_extensions = ['.dsk', '.zip', '.tap', '.tzx', '.img', '.bin']
image_extensions = ['.png', '.jpg', '.jpeg']

with open(output_csv, mode="w", newline="", encoding="utf-8") as csvfile:
    writer = csv.DictWriter(csvfile, fieldnames=fields)
    writer.writeheader()

    results = search_items(f'collection:{collection}')
    for result in results:
        identifier = result.get("identifier", "")
        print(f"📥 Traitement de : {identifier}")
        item = get_item(identifier)
        meta = item.metadata

        item_files = item.files
        filtered_files = [
            f["name"] for f in item_files
            if any(f["name"].endswith(ext) for ext in allowed_extensions)
        ]

        downloaded_paths = []
        if filtered_files:
            try:
                # Les fichiers seront dans un sous-dossier du nom de l'identifiant
                item.download(
                    destdir=download_dir,
                    files=filtered_files,
                    verbose=False
                )
                downloaded_paths = [
                    os.path.join(download_dir, identifier, f) for f in filtered_files
                ]
            except Exception as e:
                print(f"  ❌ Erreur téléchargement fichiers : {e}")
                continue

        screenshot_path = ""
        for file in item_files:
            name = file["name"].lower()
            if any(name.endswith(ext) for ext in image_extensions) and (
                "screenshot" in name or "title" in name or "cover" in name or "thumb" in name
            ):
                try:
                    # Téléchargement de l'image dans sous-dossier du jeu
                    item.get_file(file["name"]).download(
                        destdir=os.path.join(screenshot_dir, identifier),
                        verbose=False
                    )
                    screenshot_path = os.path.join(screenshot_dir, identifier, file["name"])
                    print(f"  🖼️ Screenshot téléchargée : {file['name']}")
                    break
                except Exception as e:
                    print(f"  ⚠️ Erreur screenshot : {e}")
                    break

        writer.writerow({
            "identifier": identifier,
            "title": meta.get("title", ""),
            "description": meta.get("description", ""),
            "date": meta.get("date", ""),
            "creator": meta.get("creator", ""),
            "subject": "; ".join(meta.get("subject", [])) if isinstance(meta.get("subject"), list) else meta.get("subject", ""),
            "url": f"https://archive.org/details/{identifier}",
            "local_files": "; ".join(downloaded_paths),
            "screenshot_file": screenshot_path
        })

print(f"\n✅ Terminé. Jeux dans '{download_dir}', captures dans '{screenshot_dir}', CSV : '{output_csv}'")


Arnold

statiquedynamique
Thème : Superposition par Kaira. CopyLerft 2025