Pycardano: The Ultimate Course for Python and AI Developers
About Lesson

Bài 5: Khởi tạo môi trường PyCardano & Kiểm tra kết nối mạng lưới

Thời lượng dự kiến: 8 – 10 phút

Mục tiêu:

  • Thiết lập môi trường Python sạch (Virtual Environment).
  • Cài đặt thư viện PyCardano.
  • Hiểu về Blockfrost (Provider) và cấu hình API Key.
  • Viết script Python đầu tiên để kiểm tra kết nối tới Blockchain Cardano (Preprod).

1. Giới thiệu: Tại sao lại là PyCardano?

Chào mừng các bạn đã quay trở lại với khoá học lập trình trên Cardano.

Nếu các bạn đã từng làm quen với Lucid (JavaScript/TypeScript), các bạn sẽ thấy nó rất tiện lợi cho việc xây dựng dApp trên trình duyệt. Tuy nhiên, PyCardano mang lại một sức mạnh khác biệt. Cú pháp của Python cho phép chúng ta tuỳ biến sâu hơn vào logic giao dịch, xử lý dữ liệu backend và đặc biệt là tích hợp với các hệ thống AI/Data Analysis mạnh mẽ của hệ sinh thái Python.

Tuy nhiên, vì PyCardano là thư viện Python, việc quản lý môi trường (Environment) là cực kỳ quan trọng để tránh “xung đột” với các dự án khác trong máy tính của bạn.

2. Thiết lập môi trường & Cài đặt

Để đảm bảo code chạy ổn định, chúng ta sẽ không cài trực tiếp vào máy mà sẽ sử dụng Virtual Environment (venv). Hãy tưởng tượng venv giống như một “ngôi nhà riêng” cho dự án này, mọi thứ cài đặt trong đó sẽ không ảnh hưởng đến bên ngoài.

Bước 1: Tạo thư mục dự án

Mở Terminal (hoặc CMD/PowerShell trên Windows) và chạy lệnh:

mkdir my-first-pycardano
cd my-first-pycardano

Kiểm tra phiên bản Python (Yêu cầu Python 3.7+):

python3 –version
# Hoặc trên Windows: python –version

Bước 2: Tạo và kích hoạt môi trường ảo (Quan trọng)

  1. Tạo môi trường:

python3 -m venv venv

  1. Kích hoạt môi trường:
  • Windows:
    .venvScriptsactivate

  • MacOS / Linux:
    source venv/bin/activate

Dấu hiệu thành công: Bạn sẽ thấy chữ (venv) xuất hiện ở đầu dòng lệnh trong Terminal.

Bước 3: Cài đặt PyCardano

Khi đã ở trong môi trường ảo, hãy cài đặt thư viện:

pip install pycardano

Lệnh này sẽ tự động cài đặt các thư viện phụ thuộc như cbor2, typeguard.

3. Lấy API Key từ Blockfrost

PyCardano là một thư viện Off-chain. Nó cần một cánh cổng để giao tiếp với Blockchain. Thay vì chạy một Full Node (tốn hàng trăm GB), chúng ta sẽ dùng dịch vụ của Blockfrost.

  1. Truy cập blockfrost.io và đăng ký tài khoản.
  2. Tạo Project mới.
  3. QUAN TRỌNG: Chọn mạng Cardano Preprod (Mạng thử nghiệm ổn định nhất hiện nay).
  4. Copy Project ID (Đây là API Key, thường bắt đầu bằng preprod…).

Lưu ý bảo mật: Không bao giờ chia sẻ công khai Key này lên GitHub.

4. Viết Script “Hello World”

Chúng ta sẽ viết một đoạn code ngắn để in ra thông tin của Block mới nhất. Nếu in được, nghĩa là kết nối thành công.

Tạo file test_connection.py và nhập nội dung sau:

from pycardano import BlockFrostChainContext

# — CẤU HÌNH —
# Thay thế chuỗi bên dưới bằng API Key mạng Preprod của bạn
PROJECT_ID = “preprodPutYourKeyHere…”

# 1. Khởi tạo Chain Context (Bối cảnh chuỗi)
# BlockFrostChainContext là cầu nối giữa code Python và mạng lưới Cardano
# Lưu ý: base_url phải tương ứng với mạng Preprod
context = BlockFrostChainContext(
    project_id=PROJECT_ID,
    base_url=”[https://cardano-preprod.blockfrost.io/api](https://cardano-preprod.blockfrost.io/api)”
)

print(“⏳ Đang kết nối tới Cardano Preprod…”)

# 2. Thử lấy thông tin block mới nhất
try:
    # Hàm latest_block() dùng để lấy thông tin block mới nhất được tạo ra
    latest_block = context.latest_block()
   
    print(“-” * 30)
    print(“✅ KẾT NỐI THÀNH CÔNG!”)
    print(f”🔹 Block hiện tại (Slot): {latest_block.slot}”)
    print(f”🔹 Hash của block: {latest_block.hash}”)
    print(“-” * 30)
   
except Exception as e:
    print(f”❌ Kết nối thất bại: {e}”)
    print(“Gợi ý: Kiểm tra lại API Key hoặc xem bạn đã chọn đúng mạng Preprod trên Blockfrost chưa.”)

5. Chạy thử và Tổng kết

Tại Terminal (đang bật venv), chạy lệnh:

python test_connection.py

Kết quả mong đợi

Nếu màn hình hiện ra:

✅ KẾT NỐI THÀNH CÔNG!
🔹 Block hiện tại (Slot): 42891xxx
🔹 Hash của block: 8f2d…

Chúc mừng bạn! Bạn đã chính thức bước vào thế giới lập trình Cardano bằng Python.

Xử lý lỗi thường gặp

  • Lỗi 403 (Forbidden): Bạn chọn sai mạng (VD: Code trỏ vào Preprod nhưng Key lại của Mainnet).
  • Lỗi 404 (Not Found): URL API bị sai hoặc Blockfrost đang bảo trì (hiếm gặp).

Bài tiếp theo: Chúng ta sẽ học cách tạo Ví (Wallet) đầu tiên, lưu trữ khoá bí mật an toàn và xin tADA (tiền test) để chuẩn bị cho giao dịch chuyển tiền.

Exercise Files
Yellow and Black Simple Deep Sleep Music Playlist YouTube Thumbnail.png
Size: 367.48 KB