-
Notifications
You must be signed in to change notification settings - Fork 0
/
naoyun-visualize-live-twitter-activity.html
18 lines (17 loc) · 25.3 KB
/
naoyun-visualize-live-twitter-activity.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><title>Naoyun - Visualize Live Twitter Activity - Toto do stuff</title><meta name="description" content="Version Comments Link Tcheliabinsk (v3) Sochi Upgrade GUI Automatic User Resolver Multi Gephi Sender TwitterGrapher : Updated Solve OAuth 403 from the V3 Naoyun_V3.1 Arrow…"><meta name="generator" content="Publii Open-Source CMS for Static Site"><link rel="canonical" href="https://totetmatt.github.io/naoyun-visualize-live-twitter-activity.html"><link rel="alternate" type="application/atom+xml" href="https://totetmatt.github.io/feed.xml"><link rel="alternate" type="application/json" href="https://totetmatt.github.io/feed.json"><meta property="og:title" content="Naoyun - Visualize Live Twitter Activity"><meta property="og:site_name" content="Toto do stuff"><meta property="og:description" content="Version Comments Link Tcheliabinsk (v3) Sochi Upgrade GUI Automatic User Resolver Multi Gephi Sender TwitterGrapher : Updated Solve OAuth 403 from the V3 Naoyun_V3.1 Arrow…"><meta property="og:url" content="https://totetmatt.github.io/naoyun-visualize-live-twitter-activity.html"><meta property="og:type" content="article"><style>:root{--body-font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Fira Sans","Droid Sans","Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";--heading-font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Fira Sans","Droid Sans","Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";--logo-font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Fira Sans","Droid Sans","Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";--menu-font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Fira Sans","Droid Sans","Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol"}</style><link rel="stylesheet" href="https://totetmatt.github.io/assets/css/style.css?v=825c89ac06c7215b642eda05e8a14751"><script type="application/ld+json">{"@context":"http://schema.org","@type":"Article","mainEntityOfPage":{"@type":"WebPage","@id":"https://totetmatt.github.io/naoyun-visualize-live-twitter-activity.html"},"headline":"Naoyun - Visualize Live Twitter Activity","datePublished":"2013-02-10T17:57","dateModified":"2020-06-20T00:35","description":"Version Comments Link Tcheliabinsk (v3) Sochi Upgrade GUI Automatic User Resolver Multi Gephi Sender TwitterGrapher : Updated Solve OAuth 403 from the V3 Naoyun_V3.1 Arrow…","author":{"@type":"Person","name":"Totetmatt","url":"https://totetmatt.github.io/authors/totetmatt/"},"publisher":{"@type":"Organization","name":"Totetmatt"}}</script></head><body><div class="site-container"><header class="top" id="js-header"><a class="logo" href="https://totetmatt.github.io/">Toto do stuff</a></header><main><article class="post"><div class="hero"><figure class="hero__image hero__image--overlay"><img src="https://totetmatt.github.io/media/website/bg.jpg" srcset="https://totetmatt.github.io/media/website/responsive/bg-xs.jpg 300w, https://totetmatt.github.io/media/website/responsive/bg-sm.jpg 480w, https://totetmatt.github.io/media/website/responsive/bg-md.jpg 768w, https://totetmatt.github.io/media/website/responsive/bg-lg.jpg 1024w, https://totetmatt.github.io/media/website/responsive/bg-xl.jpg 1360w, https://totetmatt.github.io/media/website/responsive/bg-2xl.jpg 1600w" sizes="(max-width: 1600px) 100vw, 1600px" loading="eager" alt=""></figure><header class="hero__content"><div class="wrapper"><div class="post__meta"><time datetime="2013-02-10T17:57">13/02/10</time></div><h1>Naoyun - Visualize Live Twitter Activity</h1><div class="post__meta post__meta--author"><a href="https://totetmatt.github.io/authors/totetmatt/" class="feed__author invert">Totetmatt</a></div></div></header></div><div class="wrapper post__entry"><h1></h1><table style="width: 553px; border-collapse: collapse; height: 35px;" width="553" border="1"><thead><tr><td>Version</td><td>Comments</td><td>Link</td></tr><tr><td>Tcheliabinsk (v3) Sochi Upgrade</td><td><ul><li> GUI</li><li>Automatic User Resolver</li><li>Multi Gephi Sender</li><li>TwitterGrapher : Updated</li><li>Solve OAuth 403 from the V3</li></ul></td><td><a href="http://matthieu-totet.fr/Koumin/wp-content/uploads/2014/02/Naoyun_V3.1.zip">Naoyun_V3.1</a></td></tr><tr><td>Arrow in the knee (V1.4142)</td><td><ul><li>Following User is available</li><li>TwittGrapher : Adding Tweet text as Label</li><li>GeoTwitt : Experimental</li><li><strong>Bonus</strong> : Special French Politics 2012 Thema (see the user.csv and word.csv)</li></ul><p>If you have<span style="text-decoration: underline;"> previous version</span> just replace the .jar to upgrade.</p><p>At least don't touch you Properties.properties or you will have to redo the OAuth process.</p></td><td><strong><a href="http://matthieu-totet.fr/Koumin/data/uploads/apps/naoyun-v1.4142.zip">Download</a></strong></td></tr></thead><tbody><tr><td>Triple "A" (v1.0)</td><td>Start</td><td><strong><a href="http://matthieu-totet.fr/Koumin/data/uploads/apps/naoyun.zip">Download</a></strong></td></tr></tbody></table><p><strong>Demo !</strong></p><div class="post__iframe"><iframe loading="lazy" src="http://www.youtube.com/embed/VFIUSIo82sk" height="315" width="560" allowfullscreen="" frameborder="0"></iframe></div><p style="text-align: justify;">Naoyun is a software that create a bridge between Twitter and Gephi with their own Stream API. You can "follow" hashtags, words or users on twitter and display them as a network in Gephi in real time.</p><p>Here is a scheme to understand the architecture :</p><p><img loading="lazy" style="width: 600px; height: 274px;" alt="" src="https://totetmatt.github.io/media/posts/6/naoyunarchi1.jpg" sizes="(max-width: 48em) 100vw, 768px" srcset="https://totetmatt.github.io/media/posts/6/responsive/naoyunarchi1-xs.jpg 300w, https://totetmatt.github.io/media/posts/6/responsive/naoyunarchi1-sm.jpg 480w, https://totetmatt.github.io/media/posts/6/responsive/naoyunarchi1-md.jpg 768w, https://totetmatt.github.io/media/posts/6/responsive/naoyunarchi1-lg.jpg 1024w, https://totetmatt.github.io/media/posts/6/responsive/naoyunarchi1-xl.jpg 1360w, https://totetmatt.github.io/media/posts/6/responsive/naoyunarchi1-2xl.jpg 1600w"></p><p style="text-align: justify;">The<strong> TwitterStreamer</strong> is the main class that manage the <strong>Twitter API </strong>. This class also load a class that extends <strong>TwitterGephiStreamer</strong>. Each time the <strong>Twitter Api</strong> get a new Status, the <strong>TwitterStreamer </strong>call the <em><strong>newStatus </strong></em>method from the <strong>TwitterGephiStreamer </strong>class.</p><p style="text-align: justify;">On this method, there is the "Network Logic". I called "Network Logic" all the processes and the rules to create a network from Twitter status.</p><p style="text-align: justify;">For the moment, Naoyun have 3 network logic :</p><ul><li style="text-align: justify;"><a href="http://matthieu-totet.fr/Koumin/data/uploads/images/twittgrapher.jpg">TwittFullGrapher</a> : Makes a complete graph by representing users, hashtags, tweet, media, links and their connection. The "Smart" version implemented in Naoyun won't represent tracked hashtag to improve the visibility of the graph.</li><li style="text-align: justify;">TwitterUserNetwork : Represent only the relation between users.</li><li style="text-align: justify;">GeoTwitt : Just display Twitt with Geo localisation</li></ul><p style="text-align: justify;"><strong>TwitterGephiStreamer </strong>extends a specific class : <strong>GephiStreamer</strong>. This Class can send message to Gephi with the Gephi Streaming API. I based the implementation thanks to theses 2 useful links :</p><ul><li style="text-align: justify;"><a href="http://wiki.gephi.org/index.php/Specification_-_GSoC_Graph_Streaming_API" target="_blank">http://wiki.gephi.org/index.php/Specification_-_GSoC_Graph_Streaming_API</a></li><li style="text-align: justify;"><a href="https://gephi.org/2010/gsoc-2010-mid-term-graph-streaming-api/" target="_blank">https://gephi.org/2010/gsoc-2010-mid-term-graph-streaming-api/</a></li></ul><h2>How to Use Naoyun ?</h2><p>The new version comes with a GUI. It should make life easier :D</p><p>Keep in mind that Naoyun still in development, so sometime it might not work properly and some features are missing.</p><h2><strong>Naoyun</strong></h2><p>Launch the application by clicking on the <strong>Naoyun.bat</strong> / <strong>Naoyun.sh</strong>.</p><p>Because it's serious twitter business, you have to get a token. For the first launch, the application will pleased you to use a link in order to obtain a PIN Code. This PIN code has to be enter after in the software promp. Don't worry, if the process is right, this won't be ask for you anymore. The Token will be stored in the <strong>TwitterProperties.properties</strong> file.</p><p>You should see this windows</p><figure class="alignnone size-medium wp-image-72"><a href="http://matthieu-totet.fr/Koumin/wp-content/uploads/2013/03/Open.png"><img loading="lazy" alt="Open" src="https://totetmatt.github.io/media/posts/6/Open-300x169.png" sizes="(max-width: 48em) 100vw, 768px" srcset="https://totetmatt.github.io/media/posts/6/responsive/Open-300x169-xs.png 300w, https://totetmatt.github.io/media/posts/6/responsive/Open-300x169-sm.png 480w, https://totetmatt.github.io/media/posts/6/responsive/Open-300x169-md.png 768w, https://totetmatt.github.io/media/posts/6/responsive/Open-300x169-lg.png 1024w, https://totetmatt.github.io/media/posts/6/responsive/Open-300x169-xl.png 1360w, https://totetmatt.github.io/media/posts/6/responsive/Open-300x169-2xl.png 1600w" width="300" height="169"></a></figure><p></p><h2>Main Panel</h2><p>Here, by right clicking, you can activate defined Network Logic and link them to a Gephi Streamer.</p><figure class="alignnone size-medium wp-image-71"><a href="http://matthieu-totet.fr/Koumin/wp-content/uploads/2013/03/Networklogic.png"><img loading="lazy" alt="Networklogic" src="https://totetmatt.github.io/media/posts/6/Networklogic-300x170.png" sizes="(max-width: 48em) 100vw, 768px" srcset="https://totetmatt.github.io/media/posts/6/responsive/Networklogic-300x170-xs.png 300w, https://totetmatt.github.io/media/posts/6/responsive/Networklogic-300x170-sm.png 480w, https://totetmatt.github.io/media/posts/6/responsive/Networklogic-300x170-md.png 768w, https://totetmatt.github.io/media/posts/6/responsive/Networklogic-300x170-lg.png 1024w, https://totetmatt.github.io/media/posts/6/responsive/Networklogic-300x170-xl.png 1360w, https://totetmatt.github.io/media/posts/6/responsive/Networklogic-300x170-2xl.png 1600w" width="300" height="170"></a></figure><a href="http://matthieu-totet.fr/Koumin/wp-content/uploads/2013/03/GephiStream.png"><figure class="alignnone size-medium wp-image-70"><img loading="lazy" alt="GephiStream" src="https://totetmatt.github.io/media/posts/6/GephiStream-300x170.png" sizes="(max-width: 48em) 100vw, 768px" srcset="https://totetmatt.github.io/media/posts/6/responsive/GephiStream-300x170-xs.png 300w, https://totetmatt.github.io/media/posts/6/responsive/GephiStream-300x170-sm.png 480w, https://totetmatt.github.io/media/posts/6/responsive/GephiStream-300x170-md.png 768w, https://totetmatt.github.io/media/posts/6/responsive/GephiStream-300x170-lg.png 1024w, https://totetmatt.github.io/media/posts/6/responsive/GephiStream-300x170-xl.png 1360w, https://totetmatt.github.io/media/posts/6/responsive/GephiStream-300x170-2xl.png 1600w" width="300" height="170"></figure></a><p></p><p>If you select a Network logic, it will show you in green the gephi platform where the graph will be try to be send.</p><p>By default, you have only 2 workspaces defined, but it's possible to add others. Just fill up de form and click to <strong>Add Workspace </strong>.</p><p>It's not possible yet to define other <strong>Network logic</strong>.</p><h2>Streamer Tracking</h2><p>The other tabs show you the streamer stracking part.</p><figure class="alignnone size-medium wp-image-73"><a href="http://matthieu-totet.fr/Koumin/wp-content/uploads/2013/03/Streamer-Tracking.png"><img loading="lazy" alt="Streamer Tracking" src="https://totetmatt.github.io/media/posts/6/Streamer-Tracking-300x172.png" sizes="(max-width: 48em) 100vw, 768px" srcset="https://totetmatt.github.io/media/posts/6/responsive/Streamer-Tracking-300x172-xs.png 300w, https://totetmatt.github.io/media/posts/6/responsive/Streamer-Tracking-300x172-sm.png 480w, https://totetmatt.github.io/media/posts/6/responsive/Streamer-Tracking-300x172-md.png 768w, https://totetmatt.github.io/media/posts/6/responsive/Streamer-Tracking-300x172-lg.png 1024w, https://totetmatt.github.io/media/posts/6/responsive/Streamer-Tracking-300x172-xl.png 1360w, https://totetmatt.github.io/media/posts/6/responsive/Streamer-Tracking-300x172-2xl.png 1600w" width="300" height="172"></a></figure><p></p><p>You can define words and user to follow.</p><figure class="alignnone size-medium wp-image-74"><a href="http://matthieu-totet.fr/Koumin/wp-content/uploads/2013/03/User.png"><img loading="lazy" alt="User" src="https://totetmatt.github.io/media/posts/6/User-300x169.png" sizes="(max-width: 48em) 100vw, 768px" srcset="https://totetmatt.github.io/media/posts/6/responsive/User-300x169-xs.png 300w, https://totetmatt.github.io/media/posts/6/responsive/User-300x169-sm.png 480w, https://totetmatt.github.io/media/posts/6/responsive/User-300x169-md.png 768w, https://totetmatt.github.io/media/posts/6/responsive/User-300x169-lg.png 1024w, https://totetmatt.github.io/media/posts/6/responsive/User-300x169-xl.png 1360w, https://totetmatt.github.io/media/posts/6/responsive/User-300x169-2xl.png 1600w" width="300" height="169"></a></figure><p></p><p><strong><span style="color: #ff0000;">/!\</span></strong> <span style="color: #ff0000;">User need to have their id to be followed : Method used here might not works, the better is that you provide the list of user with their id in</span><strong><span style="color: #ff0000;"> tracking/user.csv /!\</span></strong></p><p>The <strong>start</strong> button will launch the twitter streaming with the current tracking items define here</p><p><strong>Gephi</strong></p><p style="text-align: justify;">Launch <a href="https://gephi.org/users/download/" target="_blank">Gephi </a>and start a new Projet.</p><p>Go to the Streaming tab and start the Streaming server.</p><p style="text-align: justify;"><img loading="lazy" style="width: 229px; height: 276px;" alt="" src="https://totetmatt.github.io/media/posts/6/screenhunter_01-jan.-11-13.44.jpg" sizes="(max-width: 48em) 100vw, 768px" srcset="https://totetmatt.github.io/media/posts/6/responsive/screenhunter_01-jan.-11-13.44-xs.jpg 300w, https://totetmatt.github.io/media/posts/6/responsive/screenhunter_01-jan.-11-13.44-sm.jpg 480w, https://totetmatt.github.io/media/posts/6/responsive/screenhunter_01-jan.-11-13.44-md.jpg 768w, https://totetmatt.github.io/media/posts/6/responsive/screenhunter_01-jan.-11-13.44-lg.jpg 1024w, https://totetmatt.github.io/media/posts/6/responsive/screenhunter_01-jan.-11-13.44-xl.jpg 1360w, https://totetmatt.github.io/media/posts/6/responsive/screenhunter_01-jan.-11-13.44-2xl.jpg 1600w"></p><p style="text-align: justify;">By default the server is<strong> http://localhost:8080</strong></p><p style="text-align: justify;"><span style="color: #ff0000;"><strong>/!\</strong> Don't launch a layout for the moment (Some bugs have been noticed )<strong> /!\</strong></span></p><p style="text-align: justify;">If you have multiple gephi stream, add as many workspace as you need and don't forget to start the Streaming Server on each workspace.</p><figure class="alignnone size-full wp-image-57"><a href="https://totetmatt.github.io/media/posts/6/ScreenHunter_29-Feb.-22-10.55.jpg"><img loading="lazy" alt="Naoyun_NewWorkspace" src="https://totetmatt.github.io/media/posts/6/ScreenHunter_29-Feb.-22-10.55.jpg" sizes="(max-width: 48em) 100vw, 768px" srcset="https://totetmatt.github.io/media/posts/6/responsive/ScreenHunter_29-Feb.-22-10.55-xs.jpg 300w, https://totetmatt.github.io/media/posts/6/responsive/ScreenHunter_29-Feb.-22-10.55-sm.jpg 480w, https://totetmatt.github.io/media/posts/6/responsive/ScreenHunter_29-Feb.-22-10.55-md.jpg 768w, https://totetmatt.github.io/media/posts/6/responsive/ScreenHunter_29-Feb.-22-10.55-lg.jpg 1024w, https://totetmatt.github.io/media/posts/6/responsive/ScreenHunter_29-Feb.-22-10.55-xl.jpg 1360w, https://totetmatt.github.io/media/posts/6/responsive/ScreenHunter_29-Feb.-22-10.55-2xl.jpg 1600w" width="142" height="131"></a></figure><p></p><p style="text-align: justify;">(Works only with v 0.8.2, It's weird to setup, but it works)</p><p style="text-align: justify;">If it's all right, and if there is activity on your research, you should see some edges and nodes party in Gephi. You can now use some Layout (like ForceAtlas 1 & 2) to have a better visualization.</p><h2 style="text-align: justify;">Possible Flow Architecture</h2><figure class="alignnone size-medium wp-image-75"><a href="http://matthieu-totet.fr/Koumin/wp-content/uploads/2013/03/Archi-1.png"><img loading="lazy" alt="Archi 1" src="https://totetmatt.github.io/media/posts/6/Archi-1-300x244.png" sizes="(max-width: 48em) 100vw, 768px" srcset="https://totetmatt.github.io/media/posts/6/responsive/Archi-1-300x244-xs.png 300w, https://totetmatt.github.io/media/posts/6/responsive/Archi-1-300x244-sm.png 480w, https://totetmatt.github.io/media/posts/6/responsive/Archi-1-300x244-md.png 768w, https://totetmatt.github.io/media/posts/6/responsive/Archi-1-300x244-lg.png 1024w, https://totetmatt.github.io/media/posts/6/responsive/Archi-1-300x244-xl.png 1360w, https://totetmatt.github.io/media/posts/6/responsive/Archi-1-300x244-2xl.png 1600w" width="300" height="244"></a></figure><p></p><figure class="alignnone size-medium wp-image-76"><a href="http://matthieu-totet.fr/Koumin/wp-content/uploads/2013/03/Archi-2.png"><img loading="lazy" alt="Archi 2" src="https://totetmatt.github.io/media/posts/6/Archi-2-300x232.png" sizes="(max-width: 48em) 100vw, 768px" srcset="https://totetmatt.github.io/media/posts/6/responsive/Archi-2-300x232-xs.png 300w, https://totetmatt.github.io/media/posts/6/responsive/Archi-2-300x232-sm.png 480w, https://totetmatt.github.io/media/posts/6/responsive/Archi-2-300x232-md.png 768w, https://totetmatt.github.io/media/posts/6/responsive/Archi-2-300x232-lg.png 1024w, https://totetmatt.github.io/media/posts/6/responsive/Archi-2-300x232-xl.png 1360w, https://totetmatt.github.io/media/posts/6/responsive/Archi-2-300x232-2xl.png 1600w" width="300" height="232"></a></figure><p></p><figure class="alignnone size-medium wp-image-77"><a href="http://matthieu-totet.fr/Koumin/wp-content/uploads/2013/03/Archi-3.png"><img loading="lazy" alt="Archi 3" src="https://totetmatt.github.io/media/posts/6/Archi-3-300x170.png" sizes="(max-width: 48em) 100vw, 768px" srcset="https://totetmatt.github.io/media/posts/6/responsive/Archi-3-300x170-xs.png 300w, https://totetmatt.github.io/media/posts/6/responsive/Archi-3-300x170-sm.png 480w, https://totetmatt.github.io/media/posts/6/responsive/Archi-3-300x170-md.png 768w, https://totetmatt.github.io/media/posts/6/responsive/Archi-3-300x170-lg.png 1024w, https://totetmatt.github.io/media/posts/6/responsive/Archi-3-300x170-xl.png 1360w, https://totetmatt.github.io/media/posts/6/responsive/Archi-3-300x170-2xl.png 1600w" width="300" height="170"></a></figure><p></p><figure class="alignnone size-medium wp-image-78"><a href="http://matthieu-totet.fr/Koumin/wp-content/uploads/2013/03/Archi-4.png"><img loading="lazy" alt="Archi 4" src="https://totetmatt.github.io/media/posts/6/Archi-4-300x104.png" sizes="(max-width: 48em) 100vw, 768px" srcset="https://totetmatt.github.io/media/posts/6/responsive/Archi-4-300x104-xs.png 300w, https://totetmatt.github.io/media/posts/6/responsive/Archi-4-300x104-sm.png 480w, https://totetmatt.github.io/media/posts/6/responsive/Archi-4-300x104-md.png 768w, https://totetmatt.github.io/media/posts/6/responsive/Archi-4-300x104-lg.png 1024w, https://totetmatt.github.io/media/posts/6/responsive/Archi-4-300x104-xl.png 1360w, https://totetmatt.github.io/media/posts/6/responsive/Archi-4-300x104-2xl.png 1600w" width="300" height="104"></a></figure><p></p><p style="text-align: justify;">Last one is possible to put in place, but I didn't test it [may explode].</p><h2>I start to stream, but nothing append on Gephi ?</h2><p>You should verify:</p><ul><li>The Gephi instance you want to reach is correctly defined and linked to a Running network logic.</li><li>The host is reachable at the adress you gave (firewall ?)</li><li>Nothing is running on same port (Tomcat, Glassfish etc... )</li><li>You start the streaming server in Gephi</li></ul><h2>User Following ?</h2><p>To follow user, if the GUI method isn't working well, you can edit the <strong>tracking/user.csv</strong> file. Each line represent a user.</p><p>There is 2 possibilities :</p><ul><li><em>username</em> : Username as a word</li><li><em>username,012345</em> : Username as a word and following him (012345 is the long id of <em>username</em>)</li></ul><h2>You'r behind a proxy ?</h2><p style="text-align: justify;">Just open the .bat or .sh script and change this :</p><ul><li style="text-align: justify;">-Dhttp.proxyHost=YourProxyHost</li><li style="text-align: justify;">-Dhttp.proxyPort=YourProxyPort</li></ul><p>.Problems ? Comments ? please contact me on Twitter (of course ;) <a href="https://twitter.com/#!/totetmatt">@totetmatt</a></p><h1>Problem with Authentification 401 ?</h1><p>Re-download or clean the <strong>properties file</strong> by deleting everything inside.</p><p>If still doesn't work, try to resynchronize your system time or better enabled automatic time synchronisation (thx to <a href="https://twitter.com/evrsml">@evrsml</a> who troubleshoot that )</p><h2> Old Video</h2><div class="post__iframe"><iframe loading="lazy" src="http://www.youtube.com/embed/oPViioGbmYU" height="315" width="420" allowfullscreen="" frameborder="0"></iframe></div></div><footer class="wrapper post__footer"><p class="post__last-updated">This article was updated on 20/06/20</p><div class="post__share"></div><div class="post__bio bio"><div class="bio__info"><h3 class="bio__name"><a href="https://totetmatt.github.io/authors/totetmatt/" class="invert" rel="author">Totetmatt</a></h3></div></div></footer></article><nav class="post__nav"><div class="post__nav-inner"><div class="post__nav-prev"><svg width="1.041em" height="0.416em" aria-hidden="true"><use xlink:href="https://totetmatt.github.io/assets/svg/svg-map.svg#arrow-prev"/></svg> <a href="https://totetmatt.github.io/arrow-v-command-line-crawler.html" class="invert post__nav-link" rel="prev"><span>Previous</span> Arrow V - Command line crawler</a></div><div class="post__nav-next"><a href="https://totetmatt.github.io/iata-maps.html" class="invert post__nav-link" rel="next"><span>Next</span> IATA Maps </a><svg width="1.041em" height="0.416em" aria-hidden="true"><use xlink:href="https://totetmatt.github.io/assets/svg/svg-map.svg#arrow-next"/></svg></div></div></nav><div class="post__related related"><div class="wrapper"><h2 class="h5 related__title">You should also read:</h2><article class="related__item"><div class="feed__meta"><time datetime="2020-10-13T20:04" class="feed__date">20/10/13</time></div><h3 class="h1"><a href="https://totetmatt.github.io/twitch-and-ffmpeg-with-some-youtube-dl-help-fetch-from-live-stream-to-local-file.html" class="invert">Twitch and FFmpeg and Youtube-dl: Fetch from live stream to local file</a></h3></article><article class="related__item"><div class="feed__meta"><time datetime="2018-03-24T11:20" class="feed__date">18/03/24</time></div><h3 class="h1"><a href="https://totetmatt.github.io/keras-and-gephi-visualize-your-deep-learning-graph.html" class="invert">Keras and Gephi : Visualize your Deep Learning Graph</a></h3></article><article class="related__item"><div class="feed__meta"><time datetime="2016-04-25T20:33" class="feed__date">16/04/25</time></div><h3 class="h1"><a href="https://totetmatt.github.io/twitter-streaming-importer-naoyun-as-a-gephi-plugin.html" class="invert">Twitter Streaming Importer : Naoyun as a Gephi Plugin</a></h3></article></div></div></main><footer class="footer"><div class="footer__copyright"><p>Powered by <a href="https://getpublii.com" target="_blank" rel="nofollow noopener">Publii Static CMS</a></p></div><button class="footer__bttop js-footer__bttop" aria-label="Back to top"><svg><title>Back to top</title><use xlink:href="https://totetmatt.github.io/assets/svg/svg-map.svg#toparrow"/></svg></button></footer></div><script>window.publiiThemeMenuConfig = {
mobileMenuMode: 'sidebar',
animationSpeed: 300,
submenuWidth: 'auto',
doubleClickTime: 500,
mobileMenuExpandableSubmenus: true,
relatedContainerForOverlayMenuSelector: '.top',
};</script><script defer="defer" src="https://totetmatt.github.io/assets/js/scripts.min.js?v=f4c4d35432d0e17d212f2fae4e0f8247"></script><script>var images = document.querySelectorAll('img[loading]');
for (var i = 0; i < images.length; i++) {
if (images[i].complete) {
images[i].classList.add('is-loaded');
} else {
images[i].addEventListener('load', function () {
this.classList.add('is-loaded');
}, false);
}
}</script></body></html>