تشغيل كود python مباشرة في المتصفح بمساعدة PyScrpit
تعرف على “PyScript”: إطار عمل جديد من Anaconda يسمح للمستخدمين بإنشاء تطبيقات Python غنية في المتصفح باستخدام واجهة HTML

هل تعمل كعالم بيانات أو مطور بايثون؟ هل تحسد المبرمجين الذين يكتبون كود جافا سكريبت عبر واجهة المتصفح؟ أطلقت Anaconda مشروعًا غير متوقع – PyScript – في PyCon US 2022. إنه إطار عمل JavaScript يتيح لك إنشاء تطبيقات Python على الويب باستخدام مزيج من Python و HTML. الهدف النهائي للمشروع هو جعل Python ومكتباتها المختلفة (statistical, ML/DL, إلخ..) في متناول جمهور أوسع بكثير (على سبيل المثال ، مطورو الواجهة الأمامية أو ما يعرف front-end developers).
ما هو بالضبط PyScript؟
يعد PyScript ، الذي طورته Anaconda ، “نظامًا لدمج Python في HTML (مثل PHP)” ، كما قال الرئيس التنفيذي لشركة Anaconda في محاضرته. هذا يعني أنه يمكن للمستخدمين إنشاء وتشغيل كود Python في HTML ، واستخدام PyScript لاستدعاء مكتبات Javascript ، واستخدام Python لجميع عمليات تطوير الويب الخاصة بهم. هذا يبدو رائعا!
ما يجب أن تعرفه عن PyScript؟
- يمكن للمطورين استخدام Python ونظامها البيئي الشامل للمكتبات (numpy و pandas و scikit-Learn).
- يمكن للمطورين اختيار الحزم والملفات المتوفرة عند تشغيل كود الصفحة باستخدام إدارة البيئة.
- تتوفر بعض مكونات واجهة المستخدم (UI) المنتقاة بعناية، مثل الأزرار والحاويات ومربعات النص.
- ليس من الضروري أن يشعر المطورين بالقلق بشأن النشر لأن PyScript تتعامل مع كل شيء في متصفحات الويب. يمكن للمطورين مشاركة ملفات HTML، بما في ذلك لوحات المعلومات و / أو النماذج، مع أصحاب المصلحة كعلماء بيانات. سيكونون قادرين على تنفيذها على متصفحاتهم دون أي إعداد معقد.
ما هي الآلية التي يعمل بها؟
Pyodide هو أساس PyScript. لا يوجد العديد من علماء البيانات الذين ليسوا على دراية بـ Pyodide. لذلك فهو توزيع Python المستند إلى WebAssembly (إصدار CPython) للمتصفح و Node.js.
ما هو WebAssembly بالضبط وكيف يعمل؟
WebAssembly هي التقنية التي تسمح لمبرمجي Python بإنشاء صفحات ويب. يستخدم تنسيق مقروء. يتم بعد ذلك ترجمة لغة تنسيق النص .wat إلى تنسيق .wasm ثنائي يمكن للمتصفحات قراءته. بفضل هذا ، يمكن للمطورين كتابة التعليمات البرمجية بأي لغة، وتجميعها في WebAssembly، ثم تشغيلها في مستعرض ويب.
يتيح لك PyScript الآن كتابة وتشغيل كود Python في متصفحك. ومن المأمول أن تدعم أيضًا لغات أخرى في المستقبل.
هذا أيضًا حيث يوجد احتمال وجود قيود. يمكن للمطورين حاليًا استخدام المكتبات التي يدعمها Pyodide عند استخدام PyScript فقط.
كيفية استخدام PyScript
يمكن الوصول إلى إصدار ألفا من PyScript على: pyscript.net
يمكن العثور على شفرة المصدر على: https://github.com/pyscript اتبع هذه التعليمات لتجربتها.
تستخدم PyScript ثلاثة طرق رئيسية للسماح لك بكتابة Python في HTML:
- py-env هو متغير بيئة Python يحدد حزم Python المطلوبة لتشغيل كود Python الخاص بك.
- تكتب كود Python الخاص بك في py-script، ويتم تنفيذه داخل صفحة الويب.
- يُنشئ برنامج py-repl مكون REPL (read-eval-print loop) يقوم بتقييم الكود الذي أدخله المستخدم وعرضه.
مثال على py-env :
إليك مثال على استخدام py-env لتأسيس بيئة Python الخاصة بنا في HTML. يتم تحميل الحزم bokeh و numpy و pandas و scikit-Learn في البيئة في هذا المثال.
مثال على py-script :
يوضح هذا المثال كيفية إنشاء لوحة معلومات مباشرة للوحة البيانات. يمكن للمطورين كتابة كود Python المعتاد في py-script تمامًا كما يفعلون في ملف Python، كما هو موضح في الكود. إذا كان المطورون لا يريدون كتابة كود Python الخاص بهم مباشرةً في py-script، فيمكنهم استخدام ملف Python مثل هذا ككود المصدر:
استنتاج :
هي framework جديدة اسمها PyScript وهي JavaScript framework بتمكنك إنك تكتب كود بايثون داخل ملف HTML زي ما هو واضح في الشرح وهذا يعطينا بعض المزايا لأي developer يحلم بيها مثل:
- استغلال قوة ال ecosystem الخاص بـ python في إنك ترن مكتبات قوية داخل كود الHTML زي numpy, pandas, scikit-learn وغيرها.
- اتصالات ثنائية مباشرة للـ objects وال Namespaces للpython و الJavaScript مع بعض.
- استخدام ال UI components الخاص ببايثون داخل ملف الHTML ومن أهمها للي شغالين في مجال الdata هي إظهار الvisualizations داخل الweb بدل ما نستخدم الJavaScript لو حد كان يحاول يعمل visualization علي web app باستخدام Dash or Plotly سيفهم ماذا نقصد.
تم الإعلان عن ال framework من قبل Anaconda
المصادر :
https://www.anaconda.com/blog/pyscript-python-in-the-browser
https://towardsdatascience.com/pyscript-unleash-the-power-of-python-in-your-browser-6e0123c6dc3f
القسم التقني
صانع المجد

1 تعليق
三五笑话 · 2023-01-18 في 07:22
不知道说啥,开心快乐每一天吧!