Initial commit
This commit is contained in:
79
fix_querynames.py
Normal file
79
fix_querynames.py
Normal file
@@ -0,0 +1,79 @@
|
||||
#!/usr/bin/env python3
|
||||
"""
|
||||
Hernoemt bestanden met '?...' in de naam naar schone namen,
|
||||
en past alle HTML/CSS referenties aan.
|
||||
"""
|
||||
|
||||
import os
|
||||
import re
|
||||
from pathlib import Path
|
||||
|
||||
BASE_DIR = Path("/var/www/correctvloerverwarming2")
|
||||
|
||||
|
||||
def rename_files():
|
||||
"""Zoek bestanden met '?' in de naam en hernoem ze."""
|
||||
mapping = {} # old_name -> new_name (relatief aan BASE_DIR)
|
||||
|
||||
for f in BASE_DIR.rglob("*"):
|
||||
if "?" in f.name and f.is_file():
|
||||
clean_name = f.name.split("?")[0]
|
||||
new_path = f.parent / clean_name
|
||||
|
||||
# Conflict: als schone naam al bestaat, overschrijf (de versie is hetzelfde bestand)
|
||||
old_rel = str(f.relative_to(BASE_DIR))
|
||||
new_rel = str(new_path.relative_to(BASE_DIR))
|
||||
|
||||
mapping[old_rel] = new_rel
|
||||
mapping[f.name] = clean_name # ook op bestandsnaam niveau
|
||||
|
||||
f.rename(new_path)
|
||||
print(f" Hernoemd: {old_rel} -> {new_rel}")
|
||||
|
||||
return mapping
|
||||
|
||||
|
||||
def fix_references(mapping):
|
||||
"""Vervang verwijzingen met %3F of ? in HTML en CSS bestanden."""
|
||||
html_updated = css_updated = 0
|
||||
|
||||
for html_path in BASE_DIR.rglob("*.html"):
|
||||
try:
|
||||
content = html_path.read_text(encoding="utf-8", errors="ignore")
|
||||
original = content
|
||||
|
||||
# Vervang URL-encoded: bestand.js%3Fver=X.Y -> bestand.js
|
||||
content = re.sub(r'(%3F|\?)ver=[^"\'&\s>]+', '', content, flags=re.IGNORECASE)
|
||||
# Vervang ook andere query params op assets
|
||||
content = re.sub(r'(\.js|\.css|\.woff2?|\.ttf|\.png|\.svg|\.jpg|\.jpeg|\.webp)(%3F|\?)[^"\'&\s>]+', r'\1', content, flags=re.IGNORECASE)
|
||||
|
||||
if content != original:
|
||||
html_path.write_text(content, encoding="utf-8")
|
||||
html_updated += 1
|
||||
except Exception as e:
|
||||
print(f" Fout HTML {html_path}: {e}")
|
||||
|
||||
for css_path in BASE_DIR.rglob("*.css"):
|
||||
try:
|
||||
content = css_path.read_text(encoding="utf-8", errors="ignore")
|
||||
original = content
|
||||
|
||||
content = re.sub(r'(\.js|\.css|\.woff2?|\.ttf|\.png|\.svg|\.jpg|\.jpeg|\.webp)(\?)[^"\')\s]+', r'\1', content, flags=re.IGNORECASE)
|
||||
|
||||
if content != original:
|
||||
css_path.write_text(content, encoding="utf-8")
|
||||
css_updated += 1
|
||||
except Exception as e:
|
||||
print(f" Fout CSS {css_path}: {e}")
|
||||
|
||||
print(f"HTML bijgewerkt: {html_updated}")
|
||||
print(f"CSS bijgewerkt: {css_updated}")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
print("=== Bestanden hernoemen (? uit bestandsnamen) ===")
|
||||
mapping = rename_files()
|
||||
print(f"\nTotaal hernoemd: {len(mapping)//2} bestanden\n")
|
||||
print("=== Referenties in HTML/CSS bijwerken ===")
|
||||
fix_references(mapping)
|
||||
print("\nKlaar!")
|
||||
Reference in New Issue
Block a user