PyScript đưa Python vào trình duyệt, dễ dàng hơn bao giờ hết

Một dự án Anaconda mới cung cấp quyền truy cập vào nhiều gói Python nổi tiếng cũng như thời gian chạy Python trong một trang web thông qua một tệp JS duy nhất bao gồm

  • PyScript đưa Python vào trình duyệt, dễ dàng hơn bao giờ hết
    Bởi Serdar Yegulalp

    Nhà văn cao cấp, InfoWorld.

    PyScript brings Python into the browser, more easily than ever

    Anaconda, nhà sản xuất bản phân phối Python cho máy tính khoa học, đã công bố tại PyCon US 2022 dự án PyScript — một cách bao gồm đơn, trong trình duyệt để chạy các tập lệnh Python trong các trang HTML dễ dàng như chính JavaScript

    Theo truyền thống, Python chỉ có thể tương tác với JavaScript hoặc một trang web bằng cách chạy như một máy chủ ứng dụng trả về HTML và JavaScript. PyScript không có thành phần máy chủ;

    [ Cũng trên InfoWorld. Sự trỗi dậy của WebAssembly ]

    Sử dụng PyScript, các thành phần hữu ích từ cả thế giới Python và JavaScript có thể được triển khai song song. Trong một ví dụ, bản trình diễn dữ liệu xe taxi ở NYC, PyScript sử dụng Pandas để phân tích dữ liệu, sau đó tạo chế độ xem 3D tương tác của dữ liệu bằng WebGL của JavaScript

    pyscriptIDG

    Bản trình diễn PyScript (kết xuất thời gian thực hoạt động taxi của NYC) sử dụng Pandas để xử lý số và các thư viện trực quan hóa JavaScript để cung cấp chế độ xem dữ liệu tương tác

    PyScript sử dụng một cổng đầy đủ của thời gian chạy CPython cho WebAssugging để chạy mã Python nội tuyến. Bạn đặt mã Python của mình bên trong các thẻ và bạn có thể đặt đầu ra của nó vào một 

    đã chọn. Thẻ  chèn khối REPL cho phép bạn nhập và thực thi mã, còn thẻ  có chức năng giống như các yêu cầu. txt trong kho lưu trữ để liệt kê các gói cần thiết

    Thời gian chạy PyScript cũng cho phép nhiều gói Python phổ biến, chẳng hạn như các thư viện khoa học đi kèm với Anaconda—NumPy, Pandas, Scikit-learn, v.v. Các bản trình diễn trong kho lưu trữ PyScript hiển thị nhiều cách khác nhau để thực hiện việc này

    Mặc dù PyScript vẫn đang ở giai đoạn đầu, nhưng nó đã cung cấp khả năng để Python và JavaScript tương tác với nhau — chẳng hạn như để Python tham chiếu DOM hoặc để các đối tượng JavaScript xử lý các đối tượng Python. PyScript cũng cho phép tương đương trong trình duyệt cho nhiều hành vi cần thiết trong bản phân phối Python, chẳng hạn như liệt kê các yêu cầu gói cho tập lệnh

    Các dự án trước đó theo hướng này, như Pyodide (mà PyScript sử dụng làm cơ sở cho công việc của chính nó), thiếu khả năng tích hợp trơn tru của PyScript giữa JavaScript và Python cũng như quyền truy cập rộng rãi của nó vào các gói. PyScript có quyền truy cập vào mọi gói có sẵn thông qua PyPI, với Pandas và NumPy thường được sử dụng đã có sẵn

    Tuy nhiên, các gói của bên thứ ba hoạt động tốt nhất nếu chúng là Python thuần túy. PyScript chưa có cơ chế tự động xây dựng nền tảng nhị phân cho các gói, mặc dù điều này về mặt lý thuyết là có thể. Một trở ngại khác là thời gian và băng thông cần thiết để tải xuống và thiết lập tất cả các thành phần cần thiết cho một trang web hỗ trợ PyScript nhất định. Thời gian chạy Python cốt lõi là khoảng 3. 4MB WebAssembly, mặc dù nó được lưu vào bộ nhớ đệm sau lần tải đầu tiên

    [ Cập nhật những phát triển mới nhất về Python và phát triển phần mềm. Đăng ký nhận bản tin Cái nhìn đầu tiên của InfoWorld ]

    Mục tiêu của Anaconda đối với PyScript, như được mô tả trong một bài đăng trên bảng tin cộng đồng, là làm cho nó trở thành một giải pháp khả thi cho vấn đề lâu nay về đóng gói và triển khai các ứng dụng Python. Từ lâu, rất khó để lấy một tập lệnh Python, đặc biệt là một tập lệnh có nhiều phần phụ thuộc và đóng gói nó để người khác sử dụng nguyên trạng mà không có thời gian chạy Python

    Có liên quan

    • con trăn
    • JavaScript
    • Phát triển web
    • Phát triển phần mềm
    • Tin tức sản phẩm

    Serdar Yegulalp là một nhà văn cao cấp tại InfoWorld, tập trung vào học máy, container hóa, devops, hệ sinh thái Python và đánh giá định kỳ

    Các nhà sản xuất Anaconda của bản phân phối Python cho máy tính triết học đã công bố tại PyCon US 2022 dự án PyScript — một cách bao gồm đơn trong trình duyệt để chạy các tập lệnh Python trong các trang HTML dễ dàng như chính JavaScript

    Theo truyền thống, Python chỉ có thể tương tác với JavaScript hoặc một trang web bằng cách chạy dưới dạng máy chủ ứng dụng trả về HTML và JavaScript. PyScript không có thành phần máy chủ;

    [ Cũng trên InfoWorld. Sự trỗi dậy của WebAssembly ]

    Sử dụng các thành phần thuận lợi của PyScript từ cả thế giới Python và JavaScript có thể được triển khai song song. Trong một mẫu bản trình diễn dữ liệu xe taxi ở NYC, PyScript sử dụng Pandas để phân tích dữ liệu, sau đó tạo chế độ xem 3D tương tác của dữ liệu bằng JavaScripts WebGL


    IDG

    Bản trình diễn PyScript (kết xuất thời gian thực về sự nhanh nhẹn của taxi NYC) sử dụng Pandas để xử lý số và các thư viện trực quan hóa JavaScript để chuẩn bị chế độ xem dữ liệu tương tác

    PyScript sử dụng một cổng đầy đủ của thời gian chạy CPython cho WebAssugging để chạy mã Python nội tuyến. Bạn định vị mã Python của mình trong _______6 thẻ và bạn có thể định vị đầu ra của nó trong lt;divgt; đã chọn. Thẻ lt;py-replgt; chèn điểm dừng REPL cho phép bạn nhập và thực thi mã và thẻ lt;py-envgt; chức năng giống như các yêu cầu. txt trong kho lưu trữ để liệt kê các gói cần thiết

    Thời gian chạy PyScript cũng cho phép nhiều gói Python thông thường, chẳng hạn như các thư viện triết học đi kèm với Anaconda—NumPy Pandas Scikit-learning và nhiều gói khác. Các bản trình diễn trong kho lưu trữ PyScript hiển thị các cách khác nhau để thực hiện việc này

    Mặc dù PyScript vẫn còn im lặng trong giai đoạn đầu nhưng nó đã chuẩn bị sức mạnh để Python và JavaScript tương tác với nhau — để Python liên kết DOM theo yêu cầu hoặc để các đối tượng JavaScript xử lý các đối tượng Python. PyScript cũng cho phép tương đương trong trình duyệt cho nhiều hành vi cần thiết trong bản phân phối Python, chẳng hạn như liệt kê các yêu cầu gói cho tập lệnh

    Các dự án trước đó theo hướng này như Pyodide (mà PyScript sử dụng làm cơ sở cho công việc của chính nó) thiếu sự tích hợp trơn tru của PyScript giữa JavaScript và Python và cách tiếp cận rộng rãi của nó đối với các gói. PyScript có cách tiếp cận để xem gói hữu ích thông qua PyPI với Pandas và NumPy thường được sử dụng đã hữu ích

    Tuy nhiên, các gói của bên thứ ba hoạt động tốt nhất nếu chúng là Python thuần túy. PyScript chưa có cơ chế nào để tự động tạo các tệp nhị phân nền tảng edifice cho các gói mặc dù điều này về mặt lý thuyết là có thể thực hiện được. Một trở ngại khác là thời gian và băng thông cần thiết để tải xuống và thiết lập tất cả các thành phần cần thiết cho một trang web hỗ trợ PyScript nhất định. Thời gian chạy Python cốt lõi là gần 3. 4 MB của WebAssembly mặc dù nó được lưu trong bộ nhớ cache phía sau tải chính

    [ Cập nhật những bước phát triển vượt bậc mới nhất về Python và sự phát triển vượt bậc của phần mềm. Đăng ký nhận bản tin Cái nhìn đầu tiên của InfoWorld ]

    Mục tiêu của Anacondas đối với PyScript như được mô tả trong một bài đăng trên bảng giao tiếp tổng hợp là làm cho nó trở thành một giải pháp khả thi cho vấn đề lâu nay về đóng gói và triển khai các ứng dụng Python. Từ lâu, thật khó để lấy một tập lệnh Python, đặc biệt là một tập lệnh có nhiều phụ thuộc và đóng gói nó cho người khác sử dụng nguyên trạng mà không có thời gian chạy Python

    PyScript có nhanh không?

    PyScript chậm đáng kể . Ngay cả khi không có gói nhập của bên thứ ba, PyScript vẫn tải xuống khoảng 22. 7 MB tài nguyên từ web. Nếu bộ nhớ đệm được bật trên trình duyệt, các yêu cầu tiếp theo sẽ tải sau khoảng 4 giây.

    PyScript có tốt không?

    Kết luận. PyScript cho thấy tiềm năng lớn như một công nghệ và dễ sử dụng . Tuy nhiên, như đã đề cập trước đó, nó không thể thay thế JavaScript trở thành ngôn ngữ được sử dụng nhiều nhất trong giao diện người dùng. Nhưng nó có thể là một cơ hội để có được hiệu suất tốt nhất trong các biểu đồ, kết quả đầu ra của máy học và các trường hợp sử dụng khác.

    Mục đích của PyScript là gì?

    PyScript là một khung web mã nguồn mở cho phép bạn tạo các ứng dụng web giao diện người dùng bằng Python . Với PyScript, bạn có thể nhúng mã Python vào HTML hoặc liên kết tới tệp Python và mã sẽ thực thi trong trình duyệt — mà không cần chạy Python trong phần phụ trợ.

    PyScript sẽ thay thế JavaScript?

    PyScript chỉ đơn thuần là kích hoạt trình duyệt cho nhiều kỹ sư phần mềm hơn chứ không loại bỏ JavaScript và các kỹ sư của trình duyệt. PyScript không có ý định loại bỏ các giải pháp và sự đổi mới của JavaScript, mà gói gọn nó bên trong PyScript .