{"id":168,"date":"2010-02-22T17:51:47","date_gmt":"2010-02-22T17:51:47","guid":{"rendered":"http:\/\/blog.soton.ac.uk\/webteam\/?p=168"},"modified":"2010-02-22T17:51:47","modified_gmt":"2010-02-22T17:51:47","slug":"tracking-twitter-for-dev8d","status":"publish","type":"post","link":"https:\/\/blog.soton.ac.uk\/webteam\/2010\/02\/22\/tracking-twitter-for-dev8d\/","title":{"rendered":"Tracking twitter for dev8d"},"content":{"rendered":"<p>In the run up to <a href=\"http:\/\/www.dev8d.org\/\">Dev8D<\/a>, there&#8217;s been a lot of <a href=\"http:\/\/twitter.com\/#search?q=dev8d\">twitter activity<\/a>, which will hopefully continue throughout and after the event. I&#8217;m hoping that something useful can come out of it, so I&#8217;ve started a running a couple of scripts based around this.<\/p>\n<h3>Capturing twitter posts<\/h3>\n<p>Firstly, I&#8217;m simply capturing all tweets which mention &#8216;dev8d&#8217; using twitter&#8217;s <a href=\"http:\/\/apiwiki.twitter.com\/Twitter-Search-API-Method%3A-search\">search API<\/a>.<\/p>\n<p>I&#8217;ve written a small python script to do this, available here:<br \/>\n<a href=\"http:\/\/github.com\/davechallis\/archive-twitter-search\">archive-twitter-search<\/a><\/p>\n<p>It&#8217;s designed to be a quick solution to archiving twitter posts related to events (or anything with a keyword), with zero configuration\/setup (you <strong>do<\/strong> still need to specify a search term though&#8230;).<\/p>\n<p>Every 10 minutes, any new tweets mentioning dev8d are stored in a SQLite database.  They should be easy enough to query or export to another format in this way.<\/p>\n<h3>Capturing the twitter network<\/h3>\n<p>The second (and potentially more interesting) thing I&#8217;m logging is the change in the network of dev8d attendees on twitter.<\/p>\n<p>I&#8217;m capturing all users with a twitter account who&#8217;ve registered on the <a href=\"http:\/\/wiki.2010.dev8d.org\/\">Dev8D wiki<\/a>, and any user who posted\/received a tweet mentioning dev8d.<\/p>\n<p>I&#8217;m then periodically (as often as twitter&#8217;s <a href=\"http:\/\/apiwiki.twitter.com\/Rate-limiting\">rate limit<\/a> allows) getting the list of friends and followers for each user, and logging when any changes to these lists occur.<\/p>\n<p>By joining users and lists of friends\/followers together, it should be possible to build up a picture of the connections between developers attending dev8d, before, during and after the event.<\/p>\n<p>I&#8217;m hoping that over time (well, over dev8d at least), I&#8217;ll be able to see how the network of attendees changes, expands and grows together.<\/p>\n<p>The data will all be freely available (upon request for now &#8211; I&#8217;m running the scripts on a desktop PC), but I&#8217;m planning to add the data to <a href=\"http:\/\/data.dev8d.org\/\">data.dev8d.org<\/a> after the event.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the run up to Dev8D, there&#8217;s been a lot of twitter activity, which will hopefully continue throughout and after the event. I&#8217;m hoping that something useful can come out of it, so I&#8217;ve started a running a couple of scripts based around this. Capturing twitter posts Firstly, I&#8217;m simply capturing all tweets which mention [&hellip;]<\/p>\n","protected":false},"author":6,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0,"footnotes":""},"categories":[93,227,256],"tags":[],"class_list":["post-168","post","type-post","status-publish","format-standard","hentry","category-python","category-sql","category-twitter"],"_links":{"self":[{"href":"https:\/\/blog.soton.ac.uk\/webteam\/wp-json\/wp\/v2\/posts\/168","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.soton.ac.uk\/webteam\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.soton.ac.uk\/webteam\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.soton.ac.uk\/webteam\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.soton.ac.uk\/webteam\/wp-json\/wp\/v2\/comments?post=168"}],"version-history":[{"count":11,"href":"https:\/\/blog.soton.ac.uk\/webteam\/wp-json\/wp\/v2\/posts\/168\/revisions"}],"predecessor-version":[{"id":179,"href":"https:\/\/blog.soton.ac.uk\/webteam\/wp-json\/wp\/v2\/posts\/168\/revisions\/179"}],"wp:attachment":[{"href":"https:\/\/blog.soton.ac.uk\/webteam\/wp-json\/wp\/v2\/media?parent=168"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.soton.ac.uk\/webteam\/wp-json\/wp\/v2\/categories?post=168"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.soton.ac.uk\/webteam\/wp-json\/wp\/v2\/tags?post=168"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}