万物皆python|浏览器中运行python程序 -- PyScript

admin 2022年5月4日12:14:22安全开发评论246 views1257字阅读4分11秒阅读模式
万物皆python|浏览器中运行python程序 -- PyScript
点击蓝字·关注我们
万物皆python|浏览器中运行python程序 -- PyScript
全文 867 字,预计阅读时间 2 分钟
万物皆python|浏览器中运行python程序 -- PyScript

前言

最近,PyScript十分火爆,他是个HTML标签,可以让用户在浏览器中运行python代码,这是个很疯狂的概念,虽然项目在发展的初期,但是PyScript的出现让我眼前一亮,也让我回想起了保罗•格雷厄姆在《黑客与画家》一书中的观点 -- 随着硬件计算力的提升,更易上手的编程语言更容易成为主流(大体是这么个意思,原观点记不住了,大家可以去看看这本书,很有前瞻性)。

难道真的是万物皆Python?

万物皆python|浏览器中运行python程序 -- PyScript
万物皆python|浏览器中运行python程序 -- PyScript

热度持续升温

2022.5.1 PyScript团队在Twitter发布了一条推文,向全世界宣告,PyScript来了,我们直接来看下我在 2022.5.3 写下这篇文章时的点赞/转发/讨论数量

万物皆python|浏览器中运行python程序 -- PyScript


github star数量

万物皆python|浏览器中运行python程序 -- PyScript


万物皆python|浏览器中运行python程序 -- PyScript
万物皆python|浏览器中运行python程序 -- PyScript

试用

在网页处插入时间戳,例如:2022 年 5 月 3 日,星期二,16:46


只需要在HTML中加入这段代码即可

<py-script>import datetime

output = Element("py-script-target")now = format(datetime.datetime.now(), "%H:%M, %A, %d %B %Y.")output.write(now)</py-script>


P.S. 你可以在其中运行任何python代码,设置可以引用第三方库numpy,pandas等

万物皆python|浏览器中运行python程序 -- PyScript
万物皆python|浏览器中运行python程序 -- PyScript

注意与php的区别

有人说,这个概念不是php早就实现了吗,在前端html中加入php的代码,其实不然。


php只是代码写在前端,但是代码的解释还是会传到后端去运行,拿到运行结果后展示到前端。


PyScript是完全运行在前端的,即你的浏览器负责“解释”这些python代码,至于解释为什么打引号,大家可以自己去PyScript的官网看看这个运行的内部原理。

万物皆python|浏览器中运行python程序 -- PyScript
万物皆python|浏览器中运行python程序 -- PyScript

官方链接

Github

https://github.com/pyscript/pyscript


官方解释PyScript

https://engineering.anaconda.com/2022/04/welcome-pyscript.html
万物皆python|浏览器中运行python程序 -- PyScript
万物皆python|浏览器中运行python程序 -- PyScript

结语

PyScript这个项目虽然在发展初期,但是绝不是一个玩具,而是一种新奇的,萌芽的新方向。它的出现让我回想起了多年前读到的《黑客与画家》,这本书的思想确实深深地影响了我。(0广告费。。逃。。)

万物皆python|浏览器中运行python程序 -- PyScript
万物皆python|浏览器中运行python程序 -- PyScript

思考

PyScript是一个开创者,但是是不是会引入很多安全问题呢,干安全的是不是又有饭吃了?

XSS的地位是不是会就此大幅提升?

这里先放一个XSS的payload

<py-script>'74img/src/onerror75alert(1)76'</py-script>


万物皆python|浏览器中运行python程序 -- PyScript
万物皆python|浏览器中运行python程序 -- PyScript
万物皆python|浏览器中运行python程序 -- PyScript
END
万物皆python|浏览器中运行python程序 -- PyScript
免责声明

本公众号内的文章及工具仅提供学习用途,由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,本公众号及文章作者不为此承担任何责任。


好文分享收藏赞一下最美点在看哦

原文始发于微信公众号(我不是Hacker):万物皆python|浏览器中运行python程序 -- PyScript

特别标注: 本站(CN-SEC.COM)所有文章仅供技术研究,若将其信息做其他用途,由用户承担全部法律及连带责任,本站不承担任何法律及连带责任,请遵守中华人民共和国安全法.
  • 我的微信
  • 微信扫一扫
  • weinxin
  • 我的微信公众号
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年5月4日12:14:22
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                  万物皆python|浏览器中运行python程序 -- PyScript http://cn-sec.com/archives/971727.html

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: