{"version":"1.0","provider_name":"Adrian Pueyo","provider_url":"https:\/\/adrianpueyo.com\/es","author_name":"Adrian Pueyo","author_url":"https:\/\/adrianpueyo.com\/es\/author\/adrianpueyo\/","title":"Useful Python tools - Adrian Pueyo","type":"rich","width":600,"height":338,"html":"<blockquote class=\"wp-embedded-content\" data-secret=\"z5QkezZPQ7\"><a href=\"https:\/\/adrianpueyo.com\/es\/courses\/python-for-nuke-artists-2\/lesson\/useful-python-tools-2\/\">Useful Python tools<\/a><\/blockquote><iframe sandbox=\"allow-scripts\" security=\"restricted\" src=\"https:\/\/adrianpueyo.com\/es\/courses\/python-for-nuke-artists-2\/lesson\/useful-python-tools-2\/embed\/#?secret=z5QkezZPQ7\" width=\"600\" height=\"338\" title=\"\u00abUseful Python tools\u00bb \u2014 Adrian Pueyo\" data-secret=\"z5QkezZPQ7\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" class=\"wp-embedded-content\"><\/iframe><script>\n\/*! This file is auto-generated *\/\n!function(d,l){\"use strict\";l.querySelector&&d.addEventListener&&\"undefined\"!=typeof URL&&(d.wp=d.wp||{},d.wp.receiveEmbedMessage||(d.wp.receiveEmbedMessage=function(e){var t=e.data;if((t||t.secret||t.message||t.value)&&!\/[^a-zA-Z0-9]\/.test(t.secret)){for(var s,r,n,a=l.querySelectorAll('iframe[data-secret=\"'+t.secret+'\"]'),o=l.querySelectorAll('blockquote[data-secret=\"'+t.secret+'\"]'),c=new RegExp(\"^https?:$\",\"i\"),i=0;i<o.length;i++)o[i].style.display=\"none\";for(i=0;i<a.length;i++)s=a[i],e.source===s.contentWindow&&(s.removeAttribute(\"style\"),\"height\"===t.message?(1e3<(r=parseInt(t.value,10))?r=1e3:~~r<200&&(r=200),s.height=r):\"link\"===t.message&&(r=new URL(s.getAttribute(\"src\")),n=new URL(t.value),c.test(n.protocol))&&n.host===r.host&&l.activeElement===s&&(d.top.location.href=t.value))}},d.addEventListener(\"message\",d.wp.receiveEmbedMessage,!1),l.addEventListener(\"DOMContentLoaded\",function(){for(var e,t,s=l.querySelectorAll(\"iframe.wp-embedded-content\"),r=0;r<s.length;r++)(t=(e=s[r]).getAttribute(\"data-secret\"))||(t=Math.random().toString(36).substring(2,12),e.src+=\"#?secret=\"+t,e.setAttribute(\"data-secret\",t)),e.contentWindow.postMessage({message:\"ready\",secret:t},\"*\")},!1)))}(window,document);\n\/\/# sourceURL=https:\/\/adrianpueyo.com\/wp-includes\/js\/wp-embed.min.js\n<\/script>","description":"090_040 I show you some free Python tools, made by the community, that I consider super useful to work with, and that I always bring with me. This will serve as an example to understand the possibilities of Python in Nuke, and we will see what each of these tools brings us and how we [&hellip;]"}