Сборщик цен 23met.ru для монитора арматуры А500С
================================================

Зачем
-----
Запасной сбор с Mac/Windows, если серверу мешает 429/капча на 23met.ru.
Скрипт открывает Chrome и собирает цены.

Режим v1.8 (ускоренный)
-----------------------
Открывает Волгоград + радиус 1200 км — на одной странице диаметра
видны Москва, Ростов, Ставрополь, Минводы, Краснодар, Симферополь.
Грозный = данные Минвод; Севастополь = Симферополь.
7 страниц вместо ~56.

Требования
----------
• Google Chrome (установлен)
• Python 3.10+
• Интернет, доступ к *.23met.ru

Установка (один раз)
--------------------
Mac:
  cd папка_с_скриптом
  python3 -m pip install -r requirements.txt
  cp import_config.json.example import_config.json
  # вставьте import_token (выдаётся админом / API импорта)

Запуск
------
Только сбор (файл 23met_export.json):
  Mac: ./collect_23met.command
  Win: collect_23met.bat

Сбор + автозагрузка на сервер (HTTPS):
  Mac: ./collect_23met.command --upload
  Win: collect_23met.bat --upload

Только загрузить готовый файл:
  python3 collect_23met.py --upload-only 23met_export.json

Токен импорта
-------------
В import_config.json:
  {
    "site_url": "https://armatura.lllewa.ru",
    "import_token": "ваш_токен"
  }

Или: --token ВАШ_ТОКЕН --upload

Капча / 429
-----------
Скрипт остановится на странице и подождёт, пока вы пройдёте капчу в Chrome.
Нажмите Enter в терминале, когда таблица цен видна.

Если «висит» при запуске
------------------------
Скрипт скачивает ChromeDriver с Google CDN (до 60 сек). Если зависает или ошибка:
  1) Включите VPN и повторите
  2) Обновите Google Chrome
  3) Очистите кэш драйвера:
     rm -rf ~/.cache/armatura-23met-collector
     rm -rf ~/.local/share/undetected_chromedriver

Фильтр данных: А500С, длина 11,7 м, Ø10–25, 8 городов монитора.
