phucsd's picture
Upload folder using huggingface_hub
770f650 verified
Raw History Blame Contribute Delete
1.73 kB
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Hàm tiện ích nạp Kaggle credentials an toàn từ biến môi trường hoặc tệp .env (không hardcode key).
"""
import os
import sys
def init_kaggle_auth():
"""Tự động nạp Kaggle credentials an toàn từ .env hoặc biến môi trường."""
os.environ["PYTHONUTF8"] = "1"
# 1. Kiểm tra nếu đã có trong môi trường
if os.environ.get("KAGGLE_USERNAME") and os.environ.get("KAGGLE_KEY"):
return os.environ["KAGGLE_USERNAME"], os.environ["KAGGLE_KEY"]
# 2. Tìm tệp .env trong cây thư mục
cur = os.path.abspath(os.path.dirname(__file__))
for _ in range(4):
env_path = os.path.join(cur, ".env")
if os.path.exists(env_path):
try:
with open(env_path, "r", encoding="utf-8") as f:
for line in f:
line = line.strip()
if line and not line.startswith("#") and "=" in line:
k, v = line.split("=", 1)
k = k.strip()
v = v.strip().strip("'\"")
if k in ["KAGGLE_USERNAME", "KAGGLE_KEY"] and k not in os.environ:
os.environ[k] = v
except Exception:
pass
break
cur = os.path.dirname(cur)
if "KAGGLE_USERNAME" not in os.environ:
os.environ["KAGGLE_USERNAME"] = "gustavnguyen"
return os.environ.get("KAGGLE_USERNAME"), os.environ.get("KAGGLE_KEY")
if __name__ == "__main__":
u, k = init_kaggle_auth()
print(f"Kaggle User: {u}, Key loaded: {'Yes' if k else 'No'}")