govkit 0.6.1 → 0.7.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.rspec +3 -0
- data/Gemfile +13 -0
- data/README.md +0 -5
- data/Rakefile +1 -1
- data/VERSION +1 -1
- data/generators/govkit/templates/govkit.rb +3 -0
- data/govkit.gemspec +41 -13
- data/lib/gov_kit/acts_as_noteworthy.rb +15 -9
- data/lib/gov_kit/configuration.rb +3 -1
- data/lib/gov_kit/open_congress/bill.rb +3 -5
- data/lib/gov_kit/open_congress/blog_post.rb +3 -7
- data/lib/gov_kit/open_congress/news_post.rb +3 -7
- data/lib/gov_kit/open_congress/person.rb +2 -4
- data/lib/gov_kit/open_congress/person_stat.rb +2 -7
- data/lib/gov_kit/open_congress/roll_call.rb +4 -6
- data/lib/gov_kit/open_congress/roll_call_comparison.rb +1 -4
- data/lib/gov_kit/open_congress/voting_comparison.rb +1 -3
- data/lib/gov_kit/open_congress.rb +8 -0
- data/lib/gov_kit/open_states.rb +63 -14
- data/lib/gov_kit/railtie.rb +4 -0
- data/lib/gov_kit/resource.rb +62 -12
- data/lib/gov_kit/search_engines/bing.rb +38 -0
- data/lib/gov_kit/search_engines/google_blog.rb +3 -2
- data/lib/gov_kit/search_engines/google_news.rb +26 -16
- data/lib/gov_kit/search_engines/technorati.rb +1 -0
- data/lib/gov_kit/search_engines/wikipedia.rb +1 -1
- data/lib/gov_kit/search_engines.rb +1 -0
- data/lib/gov_kit/transparency_data.rb +98 -0
- data/lib/gov_kit/vote_smart.rb +9 -2
- data/lib/gov_kit.rb +4 -2
- data/spec/fixtures/bing/news_search.response +1 -0
- data/spec/fixtures/bing/no_results.response +1 -0
- data/spec/fixtures/open_congress/person.response +8 -0
- data/spec/fixtures/open_states/401.response +8 -4
- data/spec/fixtures/open_states/404.response +9 -0
- data/spec/fixtures/open_states/committee_find.response +53 -0
- data/spec/fixtures/open_states/committee_query.response +190 -0
- data/spec/fixtures/search_engines/google_news.response +8 -0
- data/spec/fixtures/transparency_data/contributions.response +18 -0
- data/spec/fixtures/transparency_data/entities_search.response +7 -0
- data/spec/fixtures/transparency_data/entities_search_limit_0.response +7 -0
- data/spec/fixtures/transparency_data/entities_search_limit_1.response +7 -0
- data/spec/fixtures/transparency_data/grants_find_all.response +7 -0
- data/spec/fixtures/transparency_data/lobbyists_find_all.response +7 -0
- data/spec/follow_the_money_spec.rb +7 -3
- data/spec/open_congress_spec.rb +36 -0
- data/spec/open_states_spec.rb +98 -16
- data/spec/search_engines_spec.rb +44 -0
- data/spec/spec_helper.rb +2 -3
- data/spec/transparency_data_spec.rb +106 -0
- metadata +118 -32
- data/spec/spec.opts +0 -6
data/lib/gov_kit/resource.rb
CHANGED
@@ -1,4 +1,24 @@
|
|
1
1
|
module GovKit
|
2
|
+
|
3
|
+
# This is the parent class to the classes that wrap
|
4
|
+
# the data returned to govkit.
|
5
|
+
#
|
6
|
+
# The subclasses are responsible for fetching the data as json from
|
7
|
+
# different web services; Resource will then parse the json,
|
8
|
+
# converting returned fields to instance methods.
|
9
|
+
#
|
10
|
+
# Initialize a Resource with a hash of attributes, or an array of hashes.
|
11
|
+
# For each attribute, add a getter and setter to this instance.
|
12
|
+
# So if
|
13
|
+
# res = Resource.new { "aaa" => "111", "bbb" => "222", "ccc" => "333" }
|
14
|
+
# then
|
15
|
+
# res.aaa == "111"
|
16
|
+
# res.bbb == "222"
|
17
|
+
# res.ccc == "333"
|
18
|
+
#
|
19
|
+
# Includes HTTParty, which provides convenience methods like get().
|
20
|
+
#
|
21
|
+
# See http://rdoc.info/github/jnunemaker/httparty/master/HTTParty/ClassMethods
|
2
22
|
class Resource
|
3
23
|
include HTTParty
|
4
24
|
format :json
|
@@ -17,19 +37,25 @@ module GovKit
|
|
17
37
|
# on sync
|
18
38
|
#
|
19
39
|
def to_md5
|
20
|
-
|
40
|
+
Digest::MD5.hexdigest(@raw_response.body)
|
21
41
|
end
|
22
42
|
|
43
|
+
# Handles the basic responses we might get back from Net::HTTP.
|
44
|
+
# On success, returns a new Resource based on the response.
|
45
|
+
#
|
46
|
+
# On failure, throws an error.
|
47
|
+
#
|
48
|
+
# If a service returns something other than a 404 when an object is not found,
|
49
|
+
# you'll need to handle that in the subclass.
|
50
|
+
#
|
23
51
|
def self.parse(response)
|
24
|
-
# This method handles the basic responses we might get back from
|
25
|
-
# Net::HTTP. But if a service returns something other than a 404 when an object is not found,
|
26
|
-
# you'll need to handle that in the subclass.
|
27
|
-
raise ResourceNotFound, "Resource not found" unless !response.blank?
|
28
52
|
|
29
53
|
if response.class == HTTParty::Response
|
30
54
|
case response.response
|
31
55
|
when Net::HTTPNotFound
|
32
56
|
raise ResourceNotFound, "404 Not Found"
|
57
|
+
when Net::HTTPGone
|
58
|
+
raise ResourceNotFound, "404 Not Found"
|
33
59
|
when Net::HTTPUnauthorized
|
34
60
|
raise NotAuthorized, "401 Not Authorized; have you set up your API key?"
|
35
61
|
when Net::HTTPServerError
|
@@ -38,26 +64,38 @@ module GovKit
|
|
38
64
|
raise ClientError, '4xx client error'
|
39
65
|
end
|
40
66
|
end
|
41
|
-
|
67
|
+
|
68
|
+
return [] unless !response.blank?
|
69
|
+
|
42
70
|
instantiate(response)
|
43
71
|
end
|
44
72
|
|
73
|
+
# Instantiate new GovKit::Resources.
|
74
|
+
#
|
75
|
+
# +record+ is a hash of values returned by a service,
|
76
|
+
# or an array of hashes.
|
77
|
+
#
|
78
|
+
# If +record+ is a hash, return a single GovKit::Resource.
|
79
|
+
# If it is an array, return an array of GovKit::Resources.
|
80
|
+
#
|
45
81
|
def self.instantiate(record)
|
46
82
|
if record.is_a?(Array)
|
47
83
|
instantiate_collection(record)
|
48
84
|
else
|
49
|
-
|
85
|
+
new(record)
|
50
86
|
end
|
51
87
|
end
|
52
88
|
|
53
|
-
def self.instantiate_record(record)
|
54
|
-
new(record)
|
55
|
-
end
|
56
|
-
|
57
89
|
def self.instantiate_collection(collection)
|
58
|
-
collection.collect! { |record|
|
90
|
+
collection.collect! { |record| new(record) }
|
59
91
|
end
|
60
92
|
|
93
|
+
# Given a hash of attributes, assign it to the @attributes member,
|
94
|
+
# then for each attribute, create or set a pair of member accessors with the name
|
95
|
+
# of the attribute's key.
|
96
|
+
# If the value of the attribute is itself an array or a hash,
|
97
|
+
# then create a new class with the (singularized) key as a name, and with a parent class of Resource,
|
98
|
+
# and initialize it with the hash.
|
61
99
|
def unload(attributes)
|
62
100
|
raise ArgumentError, "expected an attributes Hash, got #{attributes.inspect}" unless attributes.is_a?(Hash)
|
63
101
|
|
@@ -84,10 +122,18 @@ module GovKit
|
|
84
122
|
end
|
85
123
|
|
86
124
|
private
|
125
|
+
|
126
|
+
# Finds a member of the GovKit module with the given name.
|
127
|
+
# If the resource doesn't exist, creates it.
|
128
|
+
#
|
87
129
|
def resource_for_collection(name)
|
88
130
|
find_or_create_resource_for(name.to_s.singularize)
|
89
131
|
end
|
90
132
|
|
133
|
+
# Searches each module in +ancestors+ for members named +resource_name+
|
134
|
+
# Returns the named resource
|
135
|
+
# Throws a NameError if none of the resources in the list contains +resource_name+
|
136
|
+
#
|
91
137
|
def find_resource_in_modules(resource_name, ancestors)
|
92
138
|
if namespace = ancestors.detect { |a| a.constants.include?(resource_name.to_sym) }
|
93
139
|
return namespace.const_get(resource_name)
|
@@ -96,6 +142,10 @@ module GovKit
|
|
96
142
|
end
|
97
143
|
end
|
98
144
|
|
145
|
+
# Searches the GovKit module for a resource with the name +name+, cleaned and camelized
|
146
|
+
# Returns that resource.
|
147
|
+
# If the resource isn't found, it's created.
|
148
|
+
#
|
99
149
|
def find_or_create_resource_for(name)
|
100
150
|
resource_name = name.to_s.gsub(/^[_\-+]/,'').gsub(/^(\-?\d)/, "n#{$1}").gsub(/(\s|-)/, '').camelize
|
101
151
|
if self.class.parents.size > 1
|
@@ -0,0 +1,38 @@
|
|
1
|
+
module GovKit
|
2
|
+
module SearchEngines
|
3
|
+
class Bing
|
4
|
+
def self.search(query=[], options={})
|
5
|
+
host = GovKit::configuration.bing_base_url
|
6
|
+
query = [query, options[:geo]].compact.join('+')
|
7
|
+
|
8
|
+
options['Sources'] ||= 'news'
|
9
|
+
|
10
|
+
path = "/json.aspx?Query=#{URI::encode(query)}&AppId=#{GovKit::configuration.bing_appid}&Sources=#{options['Sources']}"
|
11
|
+
|
12
|
+
doc = JSON.parse(make_request(host, path))
|
13
|
+
|
14
|
+
mentions = []
|
15
|
+
|
16
|
+
if news_items = doc['SearchResponse']['News']
|
17
|
+
puts "#{news_items['Results'].size} from Bing"
|
18
|
+
news_items['Results'].each do |i|
|
19
|
+
mention = GovKit::Mention.new
|
20
|
+
mention.title = i['Title']
|
21
|
+
mention.search_source = 'Bing'
|
22
|
+
mention.date = DateTime.parse(i['Date'])
|
23
|
+
mention.excerpt = i['Snippet']
|
24
|
+
mention.source = i['Source']
|
25
|
+
mention.url = i['Url']
|
26
|
+
|
27
|
+
mentions << mention
|
28
|
+
end
|
29
|
+
end
|
30
|
+
mentions
|
31
|
+
end
|
32
|
+
|
33
|
+
def self.make_request(host, path)
|
34
|
+
Net::HTTP.get(host, path)
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
@@ -1,8 +1,8 @@
|
|
1
1
|
module GovKit
|
2
2
|
module SearchEngines
|
3
3
|
class GoogleBlog
|
4
|
-
def self.search(
|
5
|
-
query = options.join('+')
|
4
|
+
def self.search(query=[], options = {})
|
5
|
+
query = [query, options[:geo]].compact.join('+')
|
6
6
|
host = GovKit::configuration.google_blog_base_url
|
7
7
|
path = "/blogsearch_feeds?q=#{URI::encode(query)}&hl=en&output=rss&num=50"
|
8
8
|
|
@@ -13,6 +13,7 @@ module GovKit
|
|
13
13
|
doc.xpath('//item').each do |i|
|
14
14
|
mention = GovKit::Mention.new
|
15
15
|
mention.title = i.xpath('title').inner_text
|
16
|
+
mention.search_source = 'Google Blogs'
|
16
17
|
mention.date = i.xpath('dc:date').inner_text
|
17
18
|
mention.excerpt = i.xpath('description').inner_text
|
18
19
|
mention.source = i.xpath('dc:publisher').inner_text
|
@@ -1,35 +1,45 @@
|
|
1
|
-
require 'uri'
|
2
|
-
require 'net/http'
|
3
|
-
|
4
1
|
module GovKit
|
5
2
|
module SearchEngines
|
3
|
+
|
4
|
+
# Class to wrap access to Google News.
|
6
5
|
class GoogleNews
|
7
|
-
|
8
|
-
|
6
|
+
|
7
|
+
# Fetches stories about a topic from google news.
|
8
|
+
# Returns an array of GovKit::Mention objects.
|
9
|
+
#
|
10
|
+
# query: The query wanted For example:
|
11
|
+
# mentions = GoogleNews.search("Nancy Pelosi")
|
12
|
+
#
|
13
|
+
# options: Any additional parameters to the search. eg.:
|
14
|
+
# :geo => 'Texas' will add &geo=Texas to the URL.
|
15
|
+
# :num => 100 will show 100 results per page.
|
16
|
+
#
|
17
|
+
def self.search(query=[], options={})
|
18
|
+
query = Array(query).join('+')
|
9
19
|
host = GovKit::configuration.google_news_base_url
|
10
|
-
|
20
|
+
options[:num] ||= 50
|
11
21
|
|
12
|
-
|
13
|
-
|
22
|
+
path = "/news?q=#{URI::encode(query)}&output=rss" + '&' + options.map { |k, v| URI::encode(k.to_s) + '=' + URI::encode(v.to_s) }.join('&')
|
23
|
+
|
24
|
+
doc = Nokogiri::XML(make_request(host, path))
|
14
25
|
|
15
26
|
mentions = []
|
16
27
|
|
17
|
-
|
28
|
+
doc.xpath('//item').each do |i|
|
18
29
|
mention = GovKit::Mention.new
|
19
|
-
|
20
|
-
mention.
|
21
|
-
mention.
|
22
|
-
mention.
|
23
|
-
mention.
|
24
|
-
mention.excerpt = story.at("div.body > div.snippet").text
|
30
|
+
mention.title = i.xpath('title').inner_text.split(" - ").first
|
31
|
+
mention.date = i.xpath('pubDate').inner_text
|
32
|
+
mention.excerpt = i.xpath('description').inner_text
|
33
|
+
mention.source = i.xpath('title').inner_text.split(" - ").last
|
34
|
+
mention.url = i.xpath('link').inner_text
|
25
35
|
|
26
36
|
mentions << mention
|
27
37
|
end
|
38
|
+
|
28
39
|
mentions
|
29
40
|
end
|
30
41
|
|
31
42
|
def self.make_request(host, path)
|
32
|
-
puts host+path
|
33
43
|
response = Net::HTTP.get(host, path)
|
34
44
|
end
|
35
45
|
end
|
@@ -17,6 +17,7 @@ module GovKit
|
|
17
17
|
# mention.excerpt = i.text("excerpt")
|
18
18
|
# mention.date = i.text("created")
|
19
19
|
# mention.source = i.text("weblog/name")
|
20
|
+
# mention.search_source = 'Technorati'
|
20
21
|
# mention.url = i.text("weblog/url")
|
21
22
|
# mention.weight = i.text("weblog/inboundlinks")
|
22
23
|
#
|
@@ -4,7 +4,7 @@ module GovKit
|
|
4
4
|
include HTTParty
|
5
5
|
default_params :format => 'xml'
|
6
6
|
base_uri GovKit::configuration.wikipedia_base_url
|
7
|
-
headers 'User-Agent' => 'GovKit +http://
|
7
|
+
headers 'User-Agent' => 'GovKit +http://github.com/opengovernment/govkit'
|
8
8
|
|
9
9
|
def self.search(query, options={})
|
10
10
|
doc = Nokogiri::HTML(get("/wiki/#{query}"))
|
@@ -2,5 +2,6 @@ module GovKit::SearchEngines
|
|
2
2
|
autoload :GoogleNews, 'gov_kit/search_engines/google_news'
|
3
3
|
autoload :GoogleBlog, 'gov_kit/search_engines/google_blog'
|
4
4
|
autoload :Technorati, 'gov_kit/search_engines/technorati'
|
5
|
+
autoload :Bing, 'gov_kit/search_engines/bing'
|
5
6
|
autoload :Wikipedia, 'gov_kit/search_engines/wikipedia'
|
6
7
|
end
|
@@ -1,24 +1,122 @@
|
|
1
1
|
module GovKit
|
2
2
|
class TransparencyDataResource < Resource
|
3
|
+
|
4
|
+
# default_params and base_uri are provided by HTTParty
|
3
5
|
default_params :apikey => GovKit::configuration.sunlight_apikey
|
4
6
|
base_uri GovKit::configuration.transparency_data_base_url
|
7
|
+
|
8
|
+
def self.search_for( path, ops={} )
|
9
|
+
response = get(path, :query => ops)
|
10
|
+
# puts "response.parsed_response: #{response.parsed_response.inspect}"
|
11
|
+
parse(response)
|
12
|
+
end
|
13
|
+
|
14
|
+
# For testing.
|
15
|
+
# Instantiate a GovKit::Resource object from sample data
|
16
|
+
# To get the sample data, use the text returned by "response.parsed_response" in self.search_for
|
17
|
+
def self.from_response response
|
18
|
+
parse response
|
19
|
+
end
|
20
|
+
|
5
21
|
end
|
6
22
|
|
7
23
|
module TransparencyData
|
24
|
+
|
25
|
+
# Represents contributions.
|
26
|
+
#
|
8
27
|
# See http://transparencydata.com/api/contributions/
|
9
28
|
# for complete query options.
|
29
|
+
|
10
30
|
class Contribution < TransparencyDataResource
|
31
|
+
# Deprecated. Use search instead.
|
11
32
|
def self.find(ops = {})
|
33
|
+
puts "GovKit::TransparencyData::Contribution.find is deprecated. Use Contribution.search instead."
|
12
34
|
response = get('/contributions.json', :query => ops)
|
13
35
|
parse(response)
|
14
36
|
end
|
37
|
+
|
38
|
+
# Search for contribution records.
|
39
|
+
#
|
40
|
+
# Example query:
|
41
|
+
# contributions = GovKit::TransparencyData::Contribution.search( { 'contributor_state' => 'md', 'recipient_ft' => 'mikulski', 'cycle' => '2008', 'per_page' => '3' } )
|
42
|
+
def self.search(ops = {})
|
43
|
+
search_for('/contributions.json', ops)
|
44
|
+
end
|
15
45
|
end
|
16
46
|
|
47
|
+
# Represents government contracts.
|
48
|
+
#
|
49
|
+
# See http://transparencydata.com/api/contracts/
|
50
|
+
# for complete query options.
|
51
|
+
#
|
52
|
+
class Contract < TransparencyDataResource
|
53
|
+
# Search for contract records.
|
54
|
+
#
|
55
|
+
# Example query:
|
56
|
+
# contracts = GovKit::TransparencyData::Contract.search( { :per_page => 2, :fiscal_year => 2008 } )
|
57
|
+
def self.search(ops = {})
|
58
|
+
search_for('/contracts.json', ops)
|
59
|
+
end
|
60
|
+
end
|
61
|
+
|
62
|
+
# Represents entities -- politicians, individuals, or organizations.
|
63
|
+
#
|
64
|
+
# See http://transparencydata.com/api/aggregates/contributions/
|
65
|
+
# for complete query options.
|
66
|
+
|
17
67
|
class Entity < TransparencyDataResource
|
68
|
+
# Deprecated for consistency of naming. Use find(id) instead.
|
18
69
|
def self.find_by_id(id)
|
70
|
+
puts "GovKit::TransparencyData::Entity.find_by_id is deprecated. Use Entity.find(id) instead."
|
19
71
|
response = get("/entities/#{id}.json")
|
20
72
|
parse(response)
|
21
73
|
end
|
74
|
+
|
75
|
+
# Find an entity by id.
|
76
|
+
def self.find(id)
|
77
|
+
response = get("/entities/#{id}.json")
|
78
|
+
parse(response)
|
79
|
+
end
|
80
|
+
|
81
|
+
# Search for contract records.
|
82
|
+
#
|
83
|
+
# Example query:
|
84
|
+
# entities = GovKit::TransparencyData::Entity.search('nancy+pelosi')
|
85
|
+
def self.search(search_string = '')
|
86
|
+
search_for("/entities.json", { :search => search_string } )
|
87
|
+
end
|
88
|
+
end
|
89
|
+
|
90
|
+
# Represents lobbying activity.
|
91
|
+
#
|
92
|
+
# See http://transparencydata.com/api/lobbying/
|
93
|
+
# for complete query options.
|
94
|
+
|
95
|
+
class LobbyingRecord < TransparencyDataResource
|
96
|
+
# Search for lobbying records.
|
97
|
+
#
|
98
|
+
# Example query:
|
99
|
+
# lobbying_records = GovKit::TransparencyData::LobbyingRecord.search( { :per_page => 2 } )
|
100
|
+
def self.search(ops = {})
|
101
|
+
search_for('/lobbying.json', ops)
|
102
|
+
end
|
103
|
+
end
|
104
|
+
|
105
|
+
# Represents government grants.
|
106
|
+
#
|
107
|
+
# See http://transparencydata.com/api/grants/
|
108
|
+
# for complete query options.
|
109
|
+
|
110
|
+
class Grant < TransparencyDataResource
|
111
|
+
|
112
|
+
# Search for lobbying records.
|
113
|
+
#
|
114
|
+
# Example query:
|
115
|
+
# grants = GovKit::TransparencyData::Grant.search( { :per_page => 2, :recipient_type => '00' } )
|
116
|
+
|
117
|
+
def self.search(ops = {})
|
118
|
+
search_for('/grants.json', ops)
|
119
|
+
end
|
22
120
|
end
|
23
121
|
|
24
122
|
class Categories
|
data/lib/gov_kit/vote_smart.rb
CHANGED
@@ -79,7 +79,7 @@ module GovKit
|
|
79
79
|
response = get('/Votes.getBillsByStateRecent', :query => {'stateId' => state_abbrev})
|
80
80
|
parse(response['bills'])
|
81
81
|
end
|
82
|
-
|
82
|
+
|
83
83
|
def self.find_by_category_and_year_and_state(category_id, year, state_abbrev = nil)
|
84
84
|
response = get('/Votes.getBillsByCategoryYearState', :query => {'stateId' => state_abbrev, 'year' => year, 'categoryId' => category_id})
|
85
85
|
raise(ResourceNotFound, response['error']['errorMessage']) if response['error'] && response['error']['errorMessage'] == 'No bills for this state, category, and year.'
|
@@ -91,7 +91,14 @@ module GovKit
|
|
91
91
|
find_by_category_and_year_and_state(category_id, year)
|
92
92
|
end
|
93
93
|
end
|
94
|
-
|
94
|
+
|
95
|
+
class BillAction < VoteSmartResource
|
96
|
+
def self.find(action_id)
|
97
|
+
response = get('/Votes.getBillAction', :query => {'actionId' => action_id})
|
98
|
+
parse(response['action'])
|
99
|
+
end
|
100
|
+
end
|
101
|
+
|
95
102
|
class BillCategory < VoteSmartResource
|
96
103
|
def self.find(year, state_abbrev)
|
97
104
|
response = get("/Votes.getCategories", :query => {'year' => year, 'stateId' => state_abbrev})
|
data/lib/gov_kit.rb
CHANGED
@@ -10,7 +10,7 @@ require 'json'
|
|
10
10
|
require 'gov_kit/configuration'
|
11
11
|
require 'csv'
|
12
12
|
|
13
|
-
if
|
13
|
+
if RUBY_VERSION[0,3] == "1.8"
|
14
14
|
require 'fastercsv'
|
15
15
|
end
|
16
16
|
|
@@ -24,8 +24,10 @@ module GovKit
|
|
24
24
|
autoload :OpenCongress, 'gov_kit/open_congress'
|
25
25
|
autoload :SearchEngines, 'gov_kit/search_engines'
|
26
26
|
|
27
|
+
# Convenience class to represent a news story or blog post.
|
28
|
+
# Used by GovKit::SearchEngines classes.
|
27
29
|
class Mention
|
28
|
-
attr_accessor :url, :excerpt, :title, :source, :date, :weight
|
30
|
+
attr_accessor :url, :excerpt, :title, :source, :date, :weight, :search_source
|
29
31
|
end
|
30
32
|
|
31
33
|
class GovKitError < StandardError
|
@@ -0,0 +1 @@
|
|
1
|
+
{"SearchResponse":{"Version":"2.2","Query":{"SearchTerms":"Wisconsin"},"News":{"Total":84900,"Offset":0,"Results":[{"Title":"Wisconsin Justice Says Court Fight Led to Choking","Url":"http:\/\/www.foxnews.com\/us\/2011\/06\/26\/wisconsin-justice-says-court-fight-led-to-choking\/'%20rel='nofollow","Source":"FOX News","Snippet":"June 6: Wisconsin Supreme Court Justices David T. Prosser, Jr. and Ann Walsh Bradley consider oral arguments during a hearing regarding the state's budget bill at the Wisconsin State Capitol. According to a report by Wisconsin Public Radio and the ...","Date":"2011-06-27T01:46:14Z","BreakingNews":0,"NewsCollections":[{"Name":"RelatedTextArticles","NewsArticles":[{"Title":"Law professor says infighting on partisan Wisconsin Supreme Court has made it 'laughingstock'","Url":"http:\/\/www.startribune.com\/nation\/124593598.html","Source":"Minneapolis Star Tribune","Snippet":"MADISON, Wis. - A Wisconsin law professor says bickering among the state's Supreme Court justices has made the court a \"laughingstock.\" His comments come after a liberal justice accused a conservative court member of choking her during an argument earlier ...","Date":"2011-06-27T18:06:55Z"},{"Title":"Wisconsin justice alleges tiff led to choking","Url":"http:\/\/www.journalgazette.net\/article\/20110627\/NEWS03\/306279926\/-1\/NEWS09","Source":"Fort Wayne Journal Gazette","Snippet":"MADISON, Wis. – A member of the Wisconsin Supreme Court’s liberal faction has accused a conservative justice of choking her during an argument in her office this month – a charge he denied. Supreme Court Justice Ann Walsh Bradley told the Milwaukee ...","Date":"2011-06-27T06:46:53Z"}]}]},{"Title":"Wisconsin Supreme Court sparring must end, Gov. Scott Walker says","Url":"http:\/\/www.greenbaypressgazette.com\/article\/20110627\/GPG0101\/110627047\/UW-law-professor-Supreme-Court-sparring-makes-laughingstock-?odyssey=tab|topnews|img|GPG-News","Source":"Green Bay Press-Gazette","Snippet":"MADISON — Wisconsin Gov. Scott Walker took the state Supreme Court justices to task Monday, saying their infighting has to end for the sake of public confidence in the court. His comments came after a liberal member of the court accused a conservative ...","Date":"2011-06-27T18:42:43Z","BreakingNews":0},{"Title":"Wisconsin governor signs 2-year budget","Url":"http:\/\/www.postbulletin.com\/news\/stories\/display.php?id=1458905","Source":"Post-Bulletin","Snippet":"ASHWAUBENON, Wis. -- Wisconsin Gov. Scott Walker signed a $66 billion, two-year budget Sunday that cuts about $1 billion from schools and local governments, expands government support for private schools, cuts taxes for investors and businesses, clamps ...","Date":"2011-06-27T14:25:01Z","BreakingNews":0,"NewsCollections":[{"Name":"RelatedTextArticles","NewsArticles":[{"Title":"Wisconsin governor signs balanced budget that cuts schools","Url":"http:\/\/www.macombdaily.com\/articles\/2011\/06\/26\/news\/politics\/doc4e080619b9d2b834478932.txt","Source":"Macomb Daily","Snippet":"ASHWAUBENON, Wis. — Gov. Scott Walker signed his first budget Sunday, approving a plan that plugs the state's $3 billion shortfall but slashes funding for public schools and the University of Wisconsin System. Walker, a Republican, signed the two-year $ ...","Date":"2011-06-27T04:23:43Z"},{"Title":"Gov. Walker signs Wisconsin budget bill, vetoes 50 items","Url":"http:\/\/www.twincities.com\/tablehome\/ci_18357939","Source":"Pioneer Press","Snippet":"ASHWAUBENON, Wis. - Gov. Scott Walker signed a $66 billion two-year budget Sunday that will cut about $1 billion from schools and local governments, expand taxpayer support for private voucher schools, cut taxes for investors and businesses, clamp down on ...","Date":"2011-06-26T22:40:07Z"}]}]},{"Title":"Wisconsin Rapids bans cell phone use while driving","Url":"http:\/\/www.thenorthwestern.com\/article\/20110625\/OSH0101\/306250061\/Wisconsin-Rapids-bans-cell-phone-use-while-driving?odyssey=mod|newswell|text|OSH-News|s","Source":"Oshkosh Northwestern","Snippet":"WISCONSIN RAPIDS — People driving in Wisconsin Rapids will soon no longer be able to use cell phones. The city council approved the ban Tuesday and the ordinance goes into effect Oct. 1. Hands-free devices will be allowed, and the ordinance will not ...","Date":"2011-06-25T08:58:06Z","BreakingNews":0,"NewsCollections":[{"Name":"RelatedTextArticles","NewsArticles":[{"Title":"Wisconsin Rapids City Council Approves Texting While Driving Ban","Url":"http:\/\/www.channel3000.com\/technology\/28333630\/detail.html","Source":"Channel 3000","Snippet":"WISCONSIN RAPIDS, Wis -- The Wisconsin Rapids City Council has approved an ordinance that would ban texting while driving. Hands-free devices will be allowed. The ordinance will not apply to police officers, firefighters, ambulance drivers and members of ...","Date":"2011-06-23T17:00:05Z"},{"Title":"Wisconsin Rapids bans cell phones while driving","Url":"http:\/\/www.fdlreporter.com\/article\/20110624\/FON0101\/106240403\/1985&located=rss","Source":"Fond du Lac Reporter","Snippet":"WISCONSIN RAPIDS — Motorists driving in Wisconsin Rapids soon will have to put their phones down or face a penalty. The Wisconsin Rapids City Council this week approved a citywide ban on using cell phones while driving, 5-3. The ordinance will go into ...","Date":"2011-06-24T09:20:46Z"}]}]},{"Title":"Wisconsin lands ex-North Carolina State QB Russell Wilson","Url":"http:\/\/www.detnews.com\/article\/20110627\/SPORTS0203\/106270396\/1409\/metro","Source":"Detroit News","Snippet":"Milwaukee — Former North Carolina State quarterback Russell Wilson is headed to Wisconsin, potentially solving one of the biggest trouble spots standing between the Badgers and a Big Ten title. Wisconsin coach Bret Bielema said Monday that Wilson will ...","Date":"2011-06-27T19:32:49Z","BreakingNews":0,"NewsCollections":[{"Name":"RelatedTextArticles","NewsArticles":[{"Title":"Tourists' Wilson Leaves Asheville to Pursue College Football at Wisconsin","Url":"http:\/\/www.oursportscentral.com\/services\/releases\/?id=4235251","Source":"OurSports Central","Snippet":"Second baseman Russell Wilson announced today that he will pursue his final year of eligibility at the Division I level of college football by leaving the Asheville Tourists and attending the University of Wisconsin. Wilson will not play with the Tourists ...","Date":"2011-06-27T19:25:40Z"},{"Title":"Russell Wilson leaves Asheville Tourists; commits to Wisconsin","Url":"http:\/\/www.citizen-times.com\/article\/20110627\/SPORTS\/110627020\/Russell-Wilson-leaves-Asheville-Tourists-commits-Wisconsin","Source":"Asheville Citizen-Times","Snippet":"ASHEVILLE — Asheville Tourists second baseman Russell Wilson has left the team and will play football at Wisconsin in the fall. The Tourists announced Monday morning that Wilson left the team. The former North Carolina State quarterback announced later ...","Date":"2011-06-27T18:35:33Z"}]}]},{"Title":"Wisconsin Gov. Walker doesn’t veto beer provision","Url":"http:\/\/www.bizjournals.com\/milwaukee\/news\/2011\/06\/27\/gov-walker-doesnt-veto-craft-brewing.html","Source":"The Business Journal","Snippet":"Wisconsin Gov. Scott Walker didn’t veto a controversial provision in the state budget that bans beer brewers from owning distributorships and taverns in the state. The budget signed June 26 by Walker contains a proposal that combines the brewer’s ...","Date":"2011-06-27T19:18:30Z","BreakingNews":0},{"Title":"Wisconsin on pace for strong tart-cherry season","Url":"http:\/\/www.wxow.com\/Global\/story.asp?S=14979638","Source":"WXOW TV-19","Snippet":"MADISON, Wis. (AP) - Wisconsin is expected to produce 8.7 million pounds of tart cherries this year. If that happens, it would mark a 53 percent increase over last year's harvest. State agriculture officials say the harvest looks so promising because most ...","Date":"2011-06-27T02:50:40Z","BreakingNews":0,"NewsCollections":[{"Name":"RelatedTextArticles","NewsArticles":[{"Title":"Tart-cherry boom expected for state","Url":"http:\/\/www.twincities.com\/wisconsin\/ci_18354379","Source":"Pioneer Press","Snippet":"Wisconsin is expected to produce 8.7 million pounds of tart cherries this year. If that happens, it would mark a 53 percent increase over last year's harvest. State agriculture officials say the harvest looks so promising because most Wisconsin cherry trees survived the winter with little or no"},{"Title":"State Cherry Production Expected to Rebound in 2011","Url":"http:\/\/www.wisconsinagconnection.com\/story-state.php?Id=770&yr=2011","Source":"Wisconsin Ag Connection","Snippet":"Wisconsin's tart cherry production is forecast to be at 8.7 million pounds this year--up significantly from last year when output was half that much after a cool spring and heavy rains limited early growth. State agriculture officials say most cherry trees in Wisconsin survived the winter with"}]}]},{"Title":"Wisconsin running back will play for Pitt this fall","Url":"http:\/\/www.pittsburghlive.com\/x\/pittsburghtrib\/sports\/s_744047.html","Source":"Pittsburgh Tribune-Review","Snippet":"Pitt running back Ray Graham may get a chance to take a breath, after all. Former Wisconsin running back Zach Brown informed the Pitt coaching staff that he will enroll in classes and join the Panthers football team next season. Because he graduated and ...","Date":"2011-06-27T03:55:05Z","BreakingNews":0,"NewsCollections":[{"Name":"RelatedTextArticles","NewsArticles":[{"Title":"Pitt adds RB transfer from Wisconsin","Url":"http:\/\/rivals.yahoo.com\/ncaa\/football\/news?slug=rivals-1235119","Source":"Collegebaseball.rivals.com","Snippet":"The Pitt football team continues to add scholarship players to the 2011 roster, and this weekend produced another. Running back Zach Brown confirmed with PantherLair.com that he is transferring to Pitt from Wisconsin. Brown (5’10” 219) will use his ...","Date":"2011-06-26T20:52:45Z"},{"Title":"Former Wisconsin running back to pay at Pitt","Url":"http:\/\/www.pittsburghlive.com\/x\/pittsburghtrib\/news\/breaking\/s_744034.html","Source":"Pittsburgh Tribune-Review","Snippet":"Pitt running back Ray Graham may get a chance to take a breath, after all. Former Wisconsin running back Zach Brown informed the Pitt coaching staff that he will enroll in classes and join the Panthers football team next season. Because he graduated and has played only three seasons, Brown will be"}]}]},{"Title":"Wisconsin's Mersch drafted by L.A. Kings","Url":"http:\/\/www.jsonline.com\/sports\/badgers\/124549999.html","Source":"Milwaukee Journal Sentinel","Snippet":"Wisconsin's Michael Mersch was selected in the fourth round of the NHL draft by the Los Angeles Kings. Mersch, a forward from Park Ridge, Ill., scored eight goals and had 11 assists in his first season with UW.","Date":"2011-06-26T03:27:38Z","BreakingNews":0,"NewsCollections":[{"Name":"RelatedTextArticles","NewsArticles":[{"Title":"Four Badgers picked in NHL Draft","Url":"http:\/\/www.dailycardinal.com\/sports\/four-badgers-picked-in-nhl-draft-1.2417681","Source":"Daily Cardinal","Snippet":"Four members of the Wisconsin men's hockey program were selected on the second day of the 2011 NHL Draft at the Xcel Energy Center in St. Paul, Minn. Three incoming freshman and one current player, sophomore forward Michael Mersch, heard their names called by NHL franchises on day two. Mersch was"},{"Title":"Four Badgers selected at NHL draft","Url":"http:\/\/www.uwbadgers.com\/sports\/m-hockey\/spec-rel\/062511aaa.html","Source":"UWBadgers.com","Snippet":"SELDEN, N.Y. -- One current and three incoming Badgers earned selection on Saturday at the 2011 NHL Entry Draft, which was held at Xcel Energy Center in St. Paul, Minn. Wisconsin's four selected student-athletes were split among the fourth and seventh rounds of the draft. Joseph LaBate went highest"}]}]},{"Title":"Wisconsin Timber Rattlers pitcher Del Howell can't keep hot starts going","Url":"http:\/\/www.postcrescent.com\/article\/20110627\/APC020602\/106270504\/Howell-trying-not-hit-wall?odyssey=tab|topnews|img|APC-Sports","Source":"Post-Crescent","Snippet":"GRAND CHUTE — Sunday's Midwest League baseball game against the Quad Cities River Bandits started well for Wisconsin Timber Rattlers pitcher Del Howell. No runs, two walks and a single was all the River Bandits got in the first three innings in what ...","Date":"2011-06-27T08:48:35Z","BreakingNews":0,"NewsCollections":[{"Name":"RelatedTextArticles","NewsArticles":[{"Title":"WISCONSIN WALKS OFF","Url":"http:\/\/web.minorleaguebaseball.com\/app\/news\/article.jsp?ymd=20110624&content_id=20966844&vkey=news_t565&fext=.jsp&sid=t565","Source":"MiLB.com","Snippet":"Carlos Martinez pitched his sixth consecutive quality start, allowing just one run on three hits in six innings of work. Martinez struck out seven batters and issued just two free passes, but the Bandits lost late as they allowed two runs to Wisconsin in ...","Date":"2011-06-25T03:14:31Z"},{"Title":"River Bandits score five in 10th to beat Rattlers","Url":"http:\/\/www.postcrescent.com\/article\/20110626\/APC02\/110626046\/River-Bandits-score-five-10th-beat-Rattlers?odyssey=tab|topnews|img|FRONTPAGE|p","Source":"Post-Crescent","Snippet":"GRAND CHUTE - Quad Cities scored five times in the top of the 10th inning to beat the Wisconsin Timber Rattlers 8-3 in a Midwest League game Sunday at Time Warner Cable Field at Fox Cities Stadium. The Timber Rattlers scored twice in the bottom of the ninth inning on home runs by TJ Mittelstaedt and"}]}]}]}}}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"SearchResponse":{"Version":"2.2","Query":{"SearchTerms":"sfjhsdfkjhsdf kjsdf kjhsdfjkhsdf"}}}
|
@@ -0,0 +1,8 @@
|
|
1
|
+
HTTP/1.1 200 OK
|
2
|
+
Server: nginx/0.6.35
|
3
|
+
Date: Tue, 15 Jun 2010 21:50:08 GMT
|
4
|
+
Content-Type: application/json; charset=utf-8
|
5
|
+
Connection: close
|
6
|
+
Vary: Authorization
|
7
|
+
|
8
|
+
{"people":[{"osid":"N00013846","name":"Rep. Jeff Miller [R, FL-1]","abstains_percentage":0.284900284900285,"person_stat":{"entered_top_viewed":"2007-02-27T10:57:23Z","party_votes_percentage":91.5714285714286,"votes_most_often_with_id":400175,"abstains_percentage":[0.284900284900285,0.284900284900285],"entered_top_blog":null,"sponsored_bills_passed_rank":50,"abstains_percentage_rank":209,"cosponsored_bills_passed_rank":170,"votes_least_often_with_id":400237,"party_votes_percentage_rank":243,"abstains":2,"sponsored_bills":9,"cosponsored_bills":124,"person_id":400279,"cosponsored_bills_rank":140,"same_party_votes_least_often_with_id":400209,"sponsored_bills_passed":0,"entered_top_news":"2007-08-31T09:49:48Z","sponsored_bills_rank":373,"cosponsored_bills_passed":1,"opposing_party_votes_most_often_with_id":400645},"votes_democratic_position":120,"recent_news":[{"average_rating":null,"commentariable_id":400279,"created_at":"2011-06-21T02:59:08Z","title":"Lawsuit Challenges Army Corps' Program to Cut Trees From Levees","contains_term":"representative","excerpt":" \u201cThe Corps adopted a new standard requiring removal of all vegetation from levees without environmental review, consideration of regional differences or scientific support,\u201d said Jeff Miller with the Center for Biological Diversity. ... ","url":"http://www.biologicaldiversity.org/news/press_releases/2011/california-levees-06-20-2011.html","weight":null,"source_url":null,"date":"2011-06-20T05:00:00Z","id":11011907,"type":"Commentary","scraped_from":"google news","is_news":true,"source":"Center for Biological Diversity (press release)","status":"OK","is_ok":true,"commentariable_type":"Person"},{"average_rating":null,"commentariable_id":400279,"created_at":"2011-06-21T02:59:08Z","title":"Letter: Suicide among veterans is an epidemic","contains_term":"rep\\.","excerpt":" Recently, I spoke with Rep. Jeff Miller, R-Chumuckla, chairman of the House Committee on Veterans Affairs, regarding this epidemic. The Veterans Administration is working diligently to address the problem. However, I believe it will take a village. ... ","url":"http://www.tcpalm.com/news/2011/jun/20/letter-suicide-among-veterans-is-an-epidemic/","weight":null,"source_url":null,"date":"2011-06-20T05:00:00Z","id":11011906,"type":"Commentary","scraped_from":"google news","is_news":true,"source":"TCPalm","status":"OK","is_ok":true,"commentariable_type":"Person"},{"average_rating":null,"commentariable_id":400279,"created_at":"2011-06-21T02:59:07Z","title":"Educator honored for work with pregnant teenagers","contains_term":"representative","excerpt":" US Rep Jeff Miller, R-Chumuckla, also offered accolades to Barrow on her retirement. Miller's district representative, Helen Hunt Rigdon, who is a member of the Healthy Woman Advisory Council, presented Barrow with a certificate of achievement. ... ","url":"http://www.crestviewbulletin.com/news/okaloosa-14526-district-school.html","weight":null,"source_url":null,"date":"2011-06-20T05:00:00Z","id":11011905,"type":"Commentary","scraped_from":"google news","is_news":true,"source":"Crestview News Bulletin","status":"OK","is_ok":true,"commentariable_type":"Person"},{"average_rating":null,"commentariable_id":400279,"created_at":"2011-06-21T02:59:07Z","title":"Student visa program: New rules, same problems","contains_term":"rep\\.","excerpt":" The Thai students complained to US Rep. Jeff Miller, R-Fla., saying they were afraid of a third-party labor broker, Ivan Lukin, who arranged for their housing and jobs. They said Lukin threatened them with deportation when they complained, ... ","url":"http://www.google.com/hostednews/ap/article/ALeqM5gLZ9n3eKjceRZHuupRqXMPab3VmQ?docId=a9f51d9a10ef4b69bc51bfc73e36fae6","weight":null,"source_url":null,"date":"2011-06-20T05:00:00Z","id":11011904,"type":"Commentary","scraped_from":"google news","is_news":true,"source":"The Associated Press","status":"OK","is_ok":true,"commentariable_type":"Person"},{"average_rating":null,"commentariable_id":400279,"created_at":"2011-06-21T02:59:07Z","title":"A tribute to courage and sacrifice","contains_term":"congress","excerpt":" By Jeff Miller In what was surely a solemn occasion, an estimated 1000 friends, family and even strangers gathered at the Cohocton Sports Complex Saturday to honor and mourn their fallen hero. Sgt. Devin Snyder, 20, was laid to rest June 18, ... ","url":"http://www.dansvilleonline.com/news/x898075902/A-tribute-to-courage-and-sacrifice","weight":null,"source_url":null,"date":"2011-06-20T05:00:00Z","id":11011903,"type":"Commentary","scraped_from":"google news","is_news":true,"source":"Dansville-Genesee Country Express (blog)","status":"OK","is_ok":true,"commentariable_type":"Person"},{"average_rating":null,"commentariable_id":400279,"created_at":"2011-06-20T03:02:44Z","title":"Riverside County supervisors: Donations won't impact quarry vote","contains_term":"senate","excerpt":" ... Mayor Marsha Swanson ($200); Corona Councilmen Eugene Montanez ($198) and Steve Nolan ($500) and Riverside Mayor Ron Loveridge ($125). Other local recipients are Assemblymen Kevin Jeffries, R-Lake Elsinore, ($2000) and Jeff Miller, R-Corona, ($1000). ","url":"http://www.pe.com/localnews/stories/PE_News_Local_D_campaign19.3dbdb33.html","weight":null,"source_url":null,"date":"2011-06-19T05:00:00Z","id":11009999,"type":"Commentary","scraped_from":"google news","is_news":true,"source":"Press-Enterprise","status":"OK","is_ok":true,"commentariable_type":"Person"},{"average_rating":null,"commentariable_id":400279,"created_at":"2011-06-20T03:02:43Z","title":"Dohner tosses no-hitter Lions fall in Wood Bat classic","contains_term":"republican","excerpt":" Showcase players include: Jeff Miller, Fleetwood; Jared Degler and Matt Bensinger, Hamburg; Andrew Gernert and Dustin Smith, Kutztown; Cole Weachock and Ryan King, Minersville; Jordan Jeter and AJ Pizzo, Muhlenberg; Austin Hornberger, Zachary Weist and ..","url":"http://republicanherald.com/sports/dohner-tosses-no-hitter-lions-fall-in-wood-bat-classic-1.1164063","weight":null,"source_url":null,"date":"2011-06-19T05:00:00Z","id":11009998,"type":"Commentary","scraped_from":"google news","is_news":true,"source":"Republican & Herald","status":"OK","is_ok":true,"commentariable_type":"Person"},{"average_rating":null,"commentariable_id":400279,"created_at":"2011-06-20T03:02:37Z","title":"New law targets head injuries","contains_term":"rep\\.","excerpt":" Jeff Miller, senior vice president of government affairs for the National Football League, which has sponsored this bill and others like it across the country, said that the key part of the North Carolina bill is protecting students and coaches by ... ","url":"http://www2.journalnow.com/news/2011/jun/19/1/wsmet01-new-law-targets-head-injuries-ar-1133932/","weight":null,"source_url":null,"date":"2011-06-19T05:00:00Z","id":11009997,"type":"Commentary","scraped_from":"google news","is_news":true,"source":"Winston-Salem Journal","status":"OK","is_ok":true,"commentariable_type":"Person"},{"average_rating":null,"commentariable_id":400279,"created_at":"2011-06-20T03:02:35Z","title":"Weak in Review","contains_term":"congress","excerpt":" RivCo Supe John Tavaglione and Corona Assemblyman Jeff Miller are GOP candidates for Congress in a new (tentative) district that ropes in Riverside, MoVal and Norco. The citizen commish that drew these congressional boundaries killed the Calvert Cobra, ..","url":"http://www.pe.com/columns/danbernstein/stories/PE_News_Local_D_dan19.3dc0656.html","weight":null,"source_url":null,"date":"2011-06-19T05:00:00Z","id":11009996,"type":"Commentary","scraped_from":"google news","is_news":true,"source":"Press-Enterprise","status":"OK","is_ok":true,"commentariable_type":"Person"},{"average_rating":null,"commentariable_id":400279,"created_at":"2011-06-19T03:01:14Z","title":"Lynn Visits World War I American Cemetery in France","contains_term":"congress","excerpt":"...in Belleau Wood honoring the U.S. Marines who fought there as part of the U.S. 2nd Division. \tTwo members of Congress \u2013 U.S. Rep. Jeff Miller of Florida and U.S. Rep. Devin Nunes of California \u2013 also were on hand for the visit, which included a stop","url":"http://www.defense.gov//news/newsarticle.aspx?id=64371","weight":null,"source_url":"http://www.defenselink.mil/","date":"2011-06-18T05:00:00Z","id":11007951,"type":"Commentary","scraped_from":"daylife","is_news":true,"source":"U.S. Department of Defense","status":"OK","is_ok":true,"commentariable_type":"Person"}],"with_party_percentage":91.5714285714286,"title":"Rep.","votes_republican_position":641,"youtube_id":"RepJeffMiller","nickname":null,"district":"1","url":null,"middlename":null,"watchdog_id":null,"recent_blogs":[{"average_rating":null,"commentariable_id":400279,"created_at":"2011-06-02T15:45:29Z","title":"The Scottcarp Dream: My Memorial Day","contains_term":"congress","excerpt":"I sat in stunned silence yesterday as I watched two incompetent boobs in Congress (Rep. Jeff Miller-R, and Rep. Filner-D) patting each other on the back for letting a few more veterans through the door to review their ...","url":"http://thescottcarpdream.blogspot.com/2011/06/my-memorial-day.html","weight":null,"source_url":"http://thescottcarpdream.blogspot.com/","date":"2011-06-01T05:00:00Z","id":10964742,"type":"Commentary","scraped_from":"google blog","is_news":false,"source":"Scott","status":"OK","is_ok":true,"commentariable_type":"Person"},{"average_rating":null,"commentariable_id":400279,"created_at":"2011-06-02T15:45:29Z","title":"One Old Vet \u00bb American Veteran News 06.02.11","contains_term":"rep\\.","excerpt":"Rep. Jeff Miller, R-Fla., announced an ambitious goal Wednesday of finding jobs for 400000 veterans within two years, the Military Times reported. The move would reduce the unemployment rate for vets from 7.7 percent to ...","url":"http://oneoldvet.com/?p=29224","weight":null,"source_url":"http://oneoldvet.com/","date":"2011-06-01T05:00:00Z","id":10964741,"type":"Commentary","scraped_from":"google blog","is_news":false,"source":"One Old Vet","status":"OK","is_ok":true,"commentariable_type":"Person"},{"average_rating":null,"commentariable_id":400279,"created_at":"2011-06-02T02:55:36Z","title":"Jewish Ledger | Serving Connecticut's Jewish Communities \u00bb New ...","contains_term":"rep\\.","excerpt":"Charles Schumer, both of New York, and Rep. Jeff Miller of Florida, introduced those resolutions. The memorial must now be approved by the U.S. Commission of Fine Arts. JWB Jewish Chaplains Council hopes to dedicate the ...","url":"http://www.jewishledger.com/2011/06/new-d-c-memorial-to-include-w-hartford-native/","weight":null,"source_url":"http://www.jewishledger.com/","date":"2011-06-01T05:00:00Z","id":10962361,"type":"Commentary","scraped_from":"google blog","is_news":false,"source":"CindyMindell","status":"OK","is_ok":true,"commentariable_type":"Person"},{"average_rating":null,"commentariable_id":400279,"created_at":"2011-06-01T15:50:04Z","title":"Advertising Sales Representative in Phoenix AZ Resume Jeff Miller ...","contains_term":"representative","excerpt":"advertising sales representative in phoenix az resume jeff miller. Jeff Miller has an extensive record of initiative and leadership resulting in measurable contributions to business profitability, efficiency, ... - ","url":"http://bineh.com/advertising-sales-representative-in-phoenix-az-resume-jeff-miller","weight":null,"source_url":"http://bineh.com/","date":"2011-06-01T05:00:00Z","id":10961040,"type":"Commentary","scraped_from":"google blog","is_news":false,"source":"admin","status":"OK","is_ok":true,"commentariable_type":"Person"},{"average_rating":null,"commentariable_id":400279,"created_at":"2011-06-01T02:48:56Z","title":"Goia Blog Spot: Honor and Remember","contains_term":"rep\\.","excerpt":"Rep. Jeff Miller is the chairman of the House Committee on Veterans' Affairs. Source: http://www.nationalreview.com/articles/268334/honor-and-remember-rep-jeff-miller · Carl Levin Carolyn B. Maloney Carolyn McCarthy ...","url":"http://goiarichmond.blogspot.com/2011/05/honor-and-remember.html","weight":null,"source_url":"http://goiarichmond.blogspot.com/","date":"2011-05-31T05:00:00Z","id":10957624,"type":"Commentary","scraped_from":"google blog","is_news":false,"source":"goiarichmond","status":"OK","is_ok":true,"commentariable_type":"Person"},{"average_rating":null,"commentariable_id":400279,"created_at":"2011-05-30T15:43:23Z","title":"Has your congressman committed to supporting House bill HCR40 ...","contains_term":"congress","excerpt":"Rep. Marcy Kaptur [D-OH] Rep. Steven LaTourette [R-OH] Rep. Frank Lucas [R-OK] Rep. Kenny Marchant [R-TX] Rep. James Marshall [D-GA] Rep. Thaddeus McCotter [R-MI] Rep. Gary Miller [R-CA] Rep. Jeff Miller [R-FL] Rep. ...","url":"http://jonesnewyork.info/2011/05/has-your-congressman-committed-to-supporting-house-bill-hcr40-north-american-union.html","weight":null,"source_url":"http://jonesnewyork.info/","date":"2011-05-30T05:00:00Z","id":10952792,"type":"Commentary","scraped_from":"google blog","is_news":false,"source":"hooveredwards","status":"OK","is_ok":true,"commentariable_type":"Person"},{"average_rating":null,"commentariable_id":400279,"created_at":"2011-05-28T02:54:26Z","title":"GA) | The MBL Market News","contains_term":"rep\\.","excerpt":"U.S. Rep. Jeff Miller (FL-01), the chairman of the House Committee on Veterans' Affairs, introduced an identical resolution in the House. H.Con.Res.45 also passed unanimously in that chamber. ...","url":"http://mblmarket.com/wordpress/2011/05/ga-12/","weight":null,"source_url":"http://mblmarket.com/wordpress/","date":"2011-05-27T05:00:00Z","id":10932597,"type":"Commentary","scraped_from":"google blog","is_news":false,"source":"admin","status":"OK","is_ok":true,"commentariable_type":"Person"},{"average_rating":null,"commentariable_id":400279,"created_at":"2011-05-27T15:45:37Z","title":"US Congress Approves Jewish Chaplains Memorial at Arlington | New ...","contains_term":"congress","excerpt":"... Jewish War Chaplains than the passage of this resolution during Jewish American Heritage Month, and a week before Memorial Day,\u201d Congressman Jeff Miller, chairman of the House Committee on Veterans' Affairs, said. ...","url":"http://nmen.org/us-congress-approves-jewish-chaplains-memorial-at-arlington/","weight":null,"source_url":"http://nmen.org/","date":"2011-05-27T05:00:00Z","id":10930986,"type":"Commentary","scraped_from":"google blog","is_news":false,"source":"admin","status":"OK","is_ok":true,"commentariable_type":"Person"},{"average_rating":null,"commentariable_id":400279,"created_at":"2011-05-29T03:11:42Z","title":"LexisNexis News - Latest News from over 4000 sources, including ...","contains_term":"rep\\.","excerpt":"U.S. Rep. Jeff Miller (FL-01), the chairman of the House Committee on Veterans' Affairs, introduced an identical resolution in the House. H.Con.Res.45 also passed unanimously in that chamber. May 26, 2011 ...","url":"http://www6.lexisnexis.com/publisher/EndUser?Action=UserDisplayFullDocument&orgId=574&topicId=100007188&docId=l:1425163709&start=4","weight":null,"source_url":"http://www6.lexisnexis.com/publisher/EndUser?Action=UserDisplayCiteList&orgId=574&topicId=100007188&isRss=true","date":"2011-05-26T05:00:00Z","id":10938680,"type":"Commentary","scraped_from":"google blog","is_news":false,"source":"http://www6.lexisnexis.com/publisher/EndUser?Action=UserDisplayCiteList&orgId=574&topicId=100007188&isRss=true","status":"OK","is_ok":true,"commentariable_type":"Person"},{"average_rating":null,"commentariable_id":400279,"created_at":"2011-05-29T03:11:42Z","title":"Indiana Student Veterans \u00bb Rep Stutzman Introduces Restoring GI ...","contains_term":"legislation","excerpt":"The Truman Project is launching a new initiative this summer... Rep Stutzman Introduces Restoring GI Bill Fairness Act of 2011. WASHINGTON, DC\u2013Chairman Jeff Miller (FL-01) of the House C.. ...","url":"http://www.indianastudentveterans.org/2011/05/rep-stutzman-introduces-restoring-gi-bill-fairness-act-of-2011/","weight":null,"source_url":"http://www.indianastudentveterans.org/","date":"2011-05-26T05:00:00Z","id":10938679,"type":"Commentary","scraped_from":"google blog","is_news":false,"source":"Russell Silver, Indiana Student Veterans","status":"OK","is_ok":true,"commentariable_type":"Person"}],"oc_users_tracking":143,"contact_webform":"http://jeffmiller.house.gov/index.cfm?FuseAction=Contact.Home","lastname":"Miller","id":400279,"gender":"M","metavid_id":"Jeff_Miller","user_approval":4.83333333333333,"page_views_count":15734,"congress_office":"2416 Rayburn House Office Building","bioguideid":"M001144","total_session_votes":700,"website":"http://jeffmiller.house.gov/","phone":"202-225-4136","firstname":"Jeff","fax":"202-225-3414","birthday":"1959-06-27","sunlight_nickname":null,"oc_user_comments":5,"religion":"Methodist","party":"Republican","news_article_count":2646,"blog_article_count":5483,"unaccented_name":"Jeff Miller","state":"FL","email":null,"biography":null}]}
|
@@ -1,6 +1,10 @@
|
|
1
1
|
HTTP/1.1 401 UNAUTHORIZED
|
2
|
-
Server: nginx/0.6
|
3
|
-
Date:
|
4
|
-
Content-Type: text/
|
2
|
+
Server: nginx/0.9.6
|
3
|
+
Date: Thu, 21 Apr 2011 22:02:36 GMT
|
4
|
+
Content-Type: text/html; charset=utf-8
|
5
|
+
Transfer-Encoding: chunked
|
5
6
|
Connection: close
|
6
|
-
Vary: Authorization
|
7
|
+
Vary: Authorization
|
8
|
+
|
9
|
+
Authorization Required:
|
10
|
+
obtain a key at http://services.sunlightlabs.com/accounts/register/
|
@@ -0,0 +1,53 @@
|
|
1
|
+
HTTP/1.1 200 OK
|
2
|
+
Server: nginx/1.0.0
|
3
|
+
Date: Fri, 29 Apr 2011 21:05:59 GMT
|
4
|
+
Content-Type: application/json; charset=utf-8
|
5
|
+
Connection: keep-alive
|
6
|
+
Authorization:
|
7
|
+
|
8
|
+
{
|
9
|
+
"members": [
|
10
|
+
{
|
11
|
+
"leg_id": "MDL000194",
|
12
|
+
"role": "member",
|
13
|
+
"name": "Joan Carter Conway"
|
14
|
+
},
|
15
|
+
{
|
16
|
+
"leg_id": "MDL000226",
|
17
|
+
"role": "member",
|
18
|
+
"name": "Paul G. Pinsky"
|
19
|
+
},
|
20
|
+
{
|
21
|
+
"leg_id": "MDL000379",
|
22
|
+
"role": "member",
|
23
|
+
"name": "Bill Ferguson"
|
24
|
+
},
|
25
|
+
{
|
26
|
+
"leg_id": "MDL000381",
|
27
|
+
"role": "member",
|
28
|
+
"name": "J. B. Jennings"
|
29
|
+
},
|
30
|
+
{
|
31
|
+
"leg_id": "MDL000384",
|
32
|
+
"role": "member",
|
33
|
+
"name": "Karen S. Montgomery"
|
34
|
+
},
|
35
|
+
{
|
36
|
+
"leg_id": "MDL000387",
|
37
|
+
"role": "member",
|
38
|
+
"name": "Ronald N. Young"
|
39
|
+
}
|
40
|
+
],
|
41
|
+
"updated_at": "2011-04-29 01:19:52",
|
42
|
+
"parent_id": "MDC000009",
|
43
|
+
"state": "md",
|
44
|
+
"sources": [
|
45
|
+
{
|
46
|
+
"url": "http://www.msa.md.gov/msa/mdmanual/05sen/html/com/02eco.html"
|
47
|
+
}
|
48
|
+
],
|
49
|
+
"subcommittee": "ENVIRONMENT SUBCOMMITTEE",
|
50
|
+
"committee": "EDUCATION, HEALTH & ENVIRONMENTAL AFFAIRS COMMITTEE",
|
51
|
+
"chamber": "upper",
|
52
|
+
"id": "MDC000012"
|
53
|
+
}
|