tube-get
quickjs
tube-get | quickjs | |
---|---|---|
1 | 4 | |
7 | 168 | |
- | - | |
10.0 | 5.2 | |
over 1 year ago | about 1 month ago | |
Python | Python | |
- | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
tube-get
-
YouTube-dl has a JavaScript interpreter written in 870 lines of Python
To understand why, I have a far simpler tool that focuses on a subset of sites (adult content video aggregators)
https://github.com/kristopolous/tube-get
It too deals with this problem but does so in a way that'd be easy to maliciously sabotage
Look right about here https://github.com/kristopolous/tube-get/blob/master/tube-ge...
Add to why this exists, this was originally written between about 2010-2015 or so so it technically predates the yt-* ecosystem.
The tool still works fine and it's not a strict subset of yt-dlp or YouTube-dl because being a different approach, although it's overall site coverage is smaller, I've had it be a "second try" system when yt-* fails and it comes up with success maybe about half the time
quickjs
-
AWS Introduces a New JavaScript Runtime for Lambda
You can use it as en embedded scripting language within Python.
[1] https://github.com/PetterS/quickjs
- YouTube-dl has a JavaScript interpreter written in 870 lines of Python
-
Why are the upcoming qutebrowser extensions only “inspired” by the WebExtensions API?
You could run the webextention javascript in quickjs.
-
Web Browser Engineering
I was interested to see that this uses the DukPy wrapper around Duktape for the JavaScript interpreter: https://browser.engineering/scripts.html
This made me start digging into whether this was considered a "safe" way of executing untrusted JavaScript in a sandbox.
its not completely clear to me if DukPy currently attempts safe evaluation - it's missing options for setting time or memory limits on executed code for example: https://github.com/amol-/dukpy
There's a QuickJS Python wrapper here which offers those limits: https://github.com/PetterS/quickjs
I'm pretty paranoid though any time it comes to security and dependencies written in C, so I'd love to see a Python wrapper around a JavaScript engine that has safe sandbox execution as a key goal plus an extensive track record to back it up!
What are some alternatives?
PyMiniRacer - PyMiniRacer is a V8 bridge in Python.
dukpy - Simple JavaScript interpreter for Python
mini_racer - Minimal embedded v8
pyduktape - Embed the Duktape JS interpreter in Python
libv8-node - Package libv8 from Node
InsideReCaptcha - Reverse-engineering the new “captchaless” ReCaptcha system...
awesome-python - An opinionated list of awesome Python frameworks, libraries, software and resources.
youtube-dl - Command-line program to download videos from YouTube.com and other video sites