Skip to content

Instantly share code, notes, and snippets.

@jtbandes
Created April 3, 2012 00:12
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jtbandes/2288183 to your computer and use it in GitHub Desktop.
Save jtbandes/2288183 to your computer and use it in GitHub Desktop.
Ask Different iPad contest
require "json"
require "zlib"
require "open-uri"
require "pp"
scores = Hash.new {|h,k| h[k] = [] }
for user in %w[13414 9388 9495 8318 4408 3117 219 292 13 5472 218]
print "Fetching page #{p}..."
response = JSON.parse Zlib::GzipReader.new(open("http://api.stackexchange.com/2.0/users/#{user}/answers?key=U4DMV*8nvpm3EOpvf69Rxw((&page=1&pagesize=35&fromdate=1331856000&todate=1333367940&order=desc&sort=votes&site=apple&filter=!b3Wz0N7mYj4b)3")).read
for item in response["items"]
scores[item["owner"]["display_name"]] << item["score"]
end
puts " read #{response["items"].length} answers for user #{item["owner"]["display_name"]}. (#{response["quota_remaining"]} queries remaining)"
response = JSON.parse Zlib::GzipReader.new(open("http://api.stackexchange.com/2.0/users/#{user}/questions?key=U4DMV*8nvpm3EOpvf69Rxw((&page=1&pagesize=35&fromdate=1331856000&todate=1333367940&order=desc&sort=votes&site=apple&filter=!b3Wz0N7mYj4b)3")).read
for item in response["items"]
scores[item["owner"]["display_name"]] << item["score"]
end
puts " read #{response["items"].length} questions for user #{item["owner"]["display_name"]}. (#{response["quota_remaining"]} queries remaining)"
end
pp Hash[Hash[scores.map{|k,v| [k,[v.sort.reverse.first(35).inject(0,:+),v.sort.reverse.first(35)*","]]}].sort_by {|k,v| v}.reverse]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment