diff --git a/apps/crawler/src/ma_http.py b/apps/crawler/src/ma_http.py
index 1bee730..ad9188b 100644
--- a/apps/crawler/src/ma_http.py
+++ b/apps/crawler/src/ma_http.py
@@ -240,24 +240,33 @@ def _parse_list_row(row, country_code: str) -> Optional[Dict]:
def _parse_archive_row(row, order_by: str) -> Optional[Dict]:
- """Ligne des archives : [name_html, country_html, genre, date_str]"""
+ """
+ Ligne des archives MA (6 colonnes) :
+ [date_label, band_link, country_link, genre, time_label, user_link]
+ ex: ["June 1", "Foo", "Germany",
+ "Black Metal", "Jun 1st, 02:04", "bar"]
+
+ Note : les dates ("June 1", "Jun 1st, 02:04") n'incluent pas l'année → date_str=None,
+ la logique d'arrêt incrémental sur date est désactivée, on re-fetch toutes les ~800
+ entrées à chaque run (coût négligeable).
+ """
if len(row) < 4:
return None
- href, name = _extract_link(row[0])
+ href, name = _extract_link(row[1])
ma_id = _extract_ma_id(href)
if not ma_id or not name:
return None
- country_href, _ = _extract_link(row[1])
+ country_href, _ = _extract_link(row[2])
m = re.search(r"/lists/([A-Z]{1,3})", country_href or "")
- cc = m.group(1) if m else _clean(row[1])
+ cc = m.group(1) if m else _clean(row[2])
return {
"ma_id": ma_id,
"name": name,
"url": href,
"country": cc,
- "genre": _clean(row[2]),
- "date_str": _clean(row[3]),
+ "genre": _clean(row[3]),
+ "date_str": None, # pas d'année dans le format MA → pas de filtre date
"date_type": order_by,
}