Skip to content

Instantly share code, notes, and snippets.

@dmmfll
Last active November 10, 2016 23:55
Show Gist options
  • Save dmmfll/3c668c4608ee46f584075d4906ad0327 to your computer and use it in GitHub Desktop.
Save dmmfll/3c668c4608ee46f584075d4906ad0327 to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 44,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {},
"execution_count": 44,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"require 'json'\n",
"require 'httparty'\n",
"\n",
"url = 'http://api.wordnik.com/v4/word.json/record/definitions?limit=200&includeRelated=true&useCanonical=false&includeTags=false&api_key=a2a73e7b926c924fad7001ca3111acd55af2ffabf50eb4ae5'\n",
"response = HTTParty.get(url)"
]
},
{
"cell_type": "code",
"execution_count": 45,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"{\"message\"=>\"exceeded access limits\", \"type\"=>\"error\"}"
]
},
"execution_count": 45,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"api_response = JSON.parse(response.body)"
]
},
{
"cell_type": "code",
"execution_count": 46,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Hash\n"
]
},
{
"ename": "TypeError",
"evalue": "no implicit conversion of Hash into String",
"output_type": "error",
"traceback": [
"\u001b[31mTypeError\u001b[0m: no implicit conversion of Hash into String",
"\u001b[37m/home/dmmmd/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/json/common.rb:156:in `initialize'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/json/common.rb:156:in `new'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/json/common.rb:156:in `parse'\u001b[0m",
"\u001b[37m(pry):149:in `<main>'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/gems/pry-0.10.4/lib/pry/pry_instance.rb:355:in `eval'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/gems/pry-0.10.4/lib/pry/pry_instance.rb:355:in `evaluate_ruby'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/gems/pry-0.10.4/lib/pry/pry_instance.rb:323:in `handle_line'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/gems/pry-0.10.4/lib/pry/pry_instance.rb:243:in `block (2 levels) in eval'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/gems/pry-0.10.4/lib/pry/pry_instance.rb:242:in `catch'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/gems/pry-0.10.4/lib/pry/pry_instance.rb:242:in `block in eval'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/gems/pry-0.10.4/lib/pry/pry_instance.rb:241:in `catch'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/gems/pry-0.10.4/lib/pry/pry_instance.rb:241:in `eval'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/gems/iruby-0.2.9/lib/iruby/backend.rb:65:in `eval'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/gems/iruby-0.2.9/lib/iruby/backend.rb:12:in `eval'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/gems/iruby-0.2.9/lib/iruby/kernel.rb:87:in `execute_request'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/gems/iruby-0.2.9/lib/iruby/kernel.rb:47:in `dispatch'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/gems/iruby-0.2.9/lib/iruby/kernel.rb:37:in `run'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/gems/iruby-0.2.9/lib/iruby/command.rb:70:in `run_kernel'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/gems/iruby-0.2.9/lib/iruby/command.rb:34:in `run'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/gems/iruby-0.2.9/bin/iruby:5:in `<top (required)>'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/bin/iruby:23:in `load'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/bin/iruby:23:in `<main>'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/bin/ruby_executable_hooks:15:in `eval'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/bin/ruby_executable_hooks:15:in `<main>'\u001b[0m"
]
}
],
"source": [
"puts api_response.class\n",
"api_response = JSON.parse(api_response)\n",
"puts api_response.class"
]
},
{
"cell_type": "code",
"execution_count": 47,
"metadata": {
"collapsed": false
},
"outputs": [
{
"ename": "TypeError",
"evalue": "no implicit conversion of String into Integer",
"output_type": "error",
"traceback": [
"\u001b[31mTypeError\u001b[0m: no implicit conversion of String into Integer",
"\u001b[37m(pry):152:in `[]'\u001b[0m",
"\u001b[37m(pry):152:in `block in <main>'\u001b[0m",
"\u001b[37m(pry):151:in `each'\u001b[0m",
"\u001b[37m(pry):151:in `map'\u001b[0m",
"\u001b[37m(pry):151:in `<main>'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/gems/pry-0.10.4/lib/pry/pry_instance.rb:355:in `eval'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/gems/pry-0.10.4/lib/pry/pry_instance.rb:355:in `evaluate_ruby'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/gems/pry-0.10.4/lib/pry/pry_instance.rb:323:in `handle_line'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/gems/pry-0.10.4/lib/pry/pry_instance.rb:243:in `block (2 levels) in eval'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/gems/pry-0.10.4/lib/pry/pry_instance.rb:242:in `catch'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/gems/pry-0.10.4/lib/pry/pry_instance.rb:242:in `block in eval'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/gems/pry-0.10.4/lib/pry/pry_instance.rb:241:in `catch'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/gems/pry-0.10.4/lib/pry/pry_instance.rb:241:in `eval'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/gems/iruby-0.2.9/lib/iruby/backend.rb:65:in `eval'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/gems/iruby-0.2.9/lib/iruby/backend.rb:12:in `eval'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/gems/iruby-0.2.9/lib/iruby/kernel.rb:87:in `execute_request'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/gems/iruby-0.2.9/lib/iruby/kernel.rb:47:in `dispatch'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/gems/iruby-0.2.9/lib/iruby/kernel.rb:37:in `run'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/gems/iruby-0.2.9/lib/iruby/command.rb:70:in `run_kernel'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/gems/iruby-0.2.9/lib/iruby/command.rb:34:in `run'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/gems/iruby-0.2.9/bin/iruby:5:in `<top (required)>'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/bin/iruby:23:in `load'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/bin/iruby:23:in `<main>'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/bin/ruby_executable_hooks:15:in `eval'\u001b[0m",
"\u001b[37m/home/dmmmd/.rvm/gems/ruby-2.3.0/bin/ruby_executable_hooks:15:in `<main>'\u001b[0m"
]
}
],
"source": [
"filtered_results = api_response.map do |datum|\n",
" datum['partOfSpeech']\n",
"end\n",
"filtered_results.uniq.map do |attr|\n",
" attr if attr.include? 'verb'\n",
"end.compact.length > 0"
]
},
{
"cell_type": "code",
"execution_count": 48,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"[1]"
]
},
"execution_count": 48,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"[1, 1, 1,].uniq"
]
},
{
"cell_type": "code",
"execution_count": 49,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"[1, false, 0]"
]
},
"execution_count": 49,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"[1, nil, nil, false, nil, 0].compact"
]
},
{
"cell_type": "code",
"execution_count": 50,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"0"
]
},
"execution_count": 50,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"[nil, nil, nil].compact.length"
]
},
{
"cell_type": "code",
"execution_count": 51,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"3"
]
},
"execution_count": 51,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"[1, nil, nil, false, nil, 0].compact.length"
]
},
{
"cell_type": "code",
"execution_count": 52,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"[\"textProns\", \"sourceDictionary\", \"exampleUses\", \"relatedWords\", \"labels\", \"citations\", \"word\", \"partOfSpeech\", \"attributionText\", \"sequence\", \"text\", \"score\"]"
]
},
"execution_count": 52,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"keys = [\"textProns\", \"sourceDictionary\", \"exampleUses\", \"relatedWords\", \"labels\", \"citations\", \"word\", \"partOfSpeech\", \"attributionText\", \"sequence\", \"text\", \"score\"]"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Ruby 2.3.0",
"language": "ruby",
"name": "ruby"
},
"language_info": {
"file_extension": ".rb",
"mimetype": "application/x-ruby",
"name": "ruby",
"version": "2.3.0"
}
},
"nbformat": 4,
"nbformat_minor": 0
}
require 'json'
require 'httparty'
url = 'http://api.wordnik.com/v4/word.json/record/definitions?limit=200&includeRelated=true&useCanonical=false&includeTags=false&api_key=a2a73e7b926c924fad7001ca3111acd55af2ffabf50eb4ae5'
response = HTTParty.get(url)
api_response = JSON.parse(response.body)
puts api_response.class
api_response = JSON.parse(api_response)
puts api_response.class
filtered_results = api_response.map do |datum|
datum['partOfSpeech']
end
filtered_results.uniq.map do |attr|
attr if attr.include? 'verb'
end.compact.length > 0
[1, 1, 1,].uniq
[1, nil, nil, false, nil, 0].compact
[nil, nil, nil].compact.length
[1, nil, nil, false, nil, 0].compact.length
keys = ["textProns", "sourceDictionary", "exampleUses", "relatedWords", "labels", "citations", "word", "partOfSpeech", "attributionText", "sequence", "text", "score"]
Display the source blob
Display the rendered blob
Raw
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment