crunchbase_v2 0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +25 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +22 -0
- data/README.rdoc +88 -0
- data/Rakefile +7 -0
- data/crunchbase.gemspec +24 -0
- data/lib/crunchbase.rb +36 -0
- data/lib/crunchbase/acquisition.rb +66 -0
- data/lib/crunchbase/api.rb +153 -0
- data/lib/crunchbase/board_members_and_advisor.rb +23 -0
- data/lib/crunchbase/category.rb +22 -0
- data/lib/crunchbase/cb_entity.rb +70 -0
- data/lib/crunchbase/competitor.rb +25 -0
- data/lib/crunchbase/crunch_exception.rb +6 -0
- data/lib/crunchbase/current_team.rb +26 -0
- data/lib/crunchbase/customer.rb +21 -0
- data/lib/crunchbase/founder.rb +21 -0
- data/lib/crunchbase/funding_round.rb +69 -0
- data/lib/crunchbase/headquarter.rb +27 -0
- data/lib/crunchbase/image.rb +21 -0
- data/lib/crunchbase/investment.rb +33 -0
- data/lib/crunchbase/ipo.rb +57 -0
- data/lib/crunchbase/location.rb +24 -0
- data/lib/crunchbase/new_item.rb +22 -0
- data/lib/crunchbase/office.rb +28 -0
- data/lib/crunchbase/organization.rb +246 -0
- data/lib/crunchbase/past_team.rb +29 -0
- data/lib/crunchbase/person.rb +31 -0
- data/lib/crunchbase/primary_image.rb +21 -0
- data/lib/crunchbase/product.rb +78 -0
- data/lib/crunchbase/relationship.rb +17 -0
- data/lib/crunchbase/search.rb +45 -0
- data/lib/crunchbase/search_result.rb +11 -0
- data/lib/crunchbase/sub_organization.rb +21 -0
- data/lib/crunchbase/version.rb +3 -0
- data/lib/crunchbase/website.rb +20 -0
- data/spec/apikey.example.yml +2 -0
- data/spec/bootstrap.rb +9 -0
- data/spec/crunchbase/acquisition_spec.rb +26 -0
- data/spec/crunchbase/api_spec.rb +8 -0
- data/spec/crunchbase/board_members_and_advisor_spec.rb +16 -0
- data/spec/crunchbase/category_spec.rb +25 -0
- data/spec/crunchbase/competitor_spec.rb +19 -0
- data/spec/crunchbase/current_team_spec.rb +17 -0
- data/spec/crunchbase/customer_spec.rb +20 -0
- data/spec/crunchbase/founder_spec.rb +20 -0
- data/spec/crunchbase/funding_round_spec.rb +26 -0
- data/spec/crunchbase/headquarter_spec.rb +17 -0
- data/spec/crunchbase/investment_spec.rb +20 -0
- data/spec/crunchbase/ipo_spec.rb +29 -0
- data/spec/crunchbase/location_spec.rb +16 -0
- data/spec/crunchbase/new_item_spec.rb +33 -0
- data/spec/crunchbase/office_spec.rb +19 -0
- data/spec/crunchbase/organization_spec.rb +62 -0
- data/spec/crunchbase/past_team_spec.rb +16 -0
- data/spec/crunchbase/person_spec.rb +23 -0
- data/spec/crunchbase/primary_image_spec.rb +21 -0
- data/spec/crunchbase/product_spec.rb +28 -0
- data/spec/crunchbase/search_result_spec.rb +16 -0
- data/spec/crunchbase/search_spec.rb +17 -0
- data/spec/crunchbase/sub_organization_spec.rb +21 -0
- data/spec/crunchbase/website_spec.rb +25 -0
- data/spec/fixtures/facebook-acquisition.js +82 -0
- data/spec/fixtures/facebook-funding-round.js +96 -0
- data/spec/fixtures/organization-facebook.js +1023 -0
- data/spec/fixtures/person-randi-zuckerberg.js +233 -0
- data/spec/spec_helper.rb +10 -0
- metadata +192 -0
@@ -0,0 +1,19 @@
|
|
1
|
+
require File.join(File.dirname(__FILE__), "..", "spec_helper.rb")
|
2
|
+
|
3
|
+
module Crunchbase
|
4
|
+
describe Office do
|
5
|
+
describe "advanced indexing" do
|
6
|
+
before(:all) do
|
7
|
+
@all_offices = Office.lists_for_permalink("facebook")
|
8
|
+
end
|
9
|
+
|
10
|
+
it "should pull from web api" do
|
11
|
+
@all_offices.per_page.should == 1000
|
12
|
+
@all_offices.current_page.should == 1
|
13
|
+
@all_offices.items.count.should == 3
|
14
|
+
|
15
|
+
puts @all_offices.items.inspect
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
@@ -0,0 +1,62 @@
|
|
1
|
+
require File.join(File.dirname(__FILE__), "..", "spec_helper.rb")
|
2
|
+
|
3
|
+
module Crunchbase
|
4
|
+
describe Organization do
|
5
|
+
|
6
|
+
describe "Get Organization object from premalink" do
|
7
|
+
before(:all) do
|
8
|
+
@company = Organization.get("facebook")
|
9
|
+
end
|
10
|
+
|
11
|
+
it "should loading relationship data" do
|
12
|
+
puts @company.websites_total_items
|
13
|
+
puts @company.websites.inspect
|
14
|
+
teams = Website.lists_for_permalink(@company.permalink)
|
15
|
+
end
|
16
|
+
|
17
|
+
it "should organization's websites data" do
|
18
|
+
# Top 8 websites
|
19
|
+
puts @company.websites
|
20
|
+
# Show websites total count
|
21
|
+
puts @company.websites_total_items
|
22
|
+
# Show organization's websites list search by organization permalink
|
23
|
+
teams = Website.lists_for_permalink(@company.permalink)
|
24
|
+
end
|
25
|
+
|
26
|
+
it "should pull from web api" do
|
27
|
+
@company.name.should == "Facebook"
|
28
|
+
@company.competitors_total_items.should == 9
|
29
|
+
@company.customers_total_items.should == 1
|
30
|
+
@company.founders_total_items.should == 5
|
31
|
+
@company.funding_rounds_total_items.should == 11
|
32
|
+
@company.ipos_total_items.should == 3
|
33
|
+
@company.products_total_items.should == 16
|
34
|
+
@company.sub_organizations_total_items.should == 2
|
35
|
+
|
36
|
+
@company.past_teams_total_items.should == 186
|
37
|
+
@company.current_teams_total_items.should == 137
|
38
|
+
@company.acquisitions_total_items.should == 49
|
39
|
+
@company.offices_total_items.should == 3
|
40
|
+
@company.headquarters_total_items.should == 1
|
41
|
+
@company.categories_total_items.should == 7
|
42
|
+
@company.investments_total_items.should == 3
|
43
|
+
@company.primary_images_total_items.should == 1
|
44
|
+
@company.images_total_items.should == 1
|
45
|
+
@company.websites_total_items.should == 6
|
46
|
+
@company.new_items_total_items.should == 3116
|
47
|
+
@company.board_members_and_advisors_total_items.should == 12
|
48
|
+
end
|
49
|
+
|
50
|
+
|
51
|
+
end
|
52
|
+
|
53
|
+
it "Search organizations by name" do
|
54
|
+
results = Organization.search({ domain_name: "facebook.com", organization_types: 'company' })
|
55
|
+
|
56
|
+
results.per_page.should == 1000
|
57
|
+
results.current_page.should == 1
|
58
|
+
puts results.results[0].inspect
|
59
|
+
end
|
60
|
+
|
61
|
+
end
|
62
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
require File.join(File.dirname(__FILE__), "..", "spec_helper.rb")
|
2
|
+
|
3
|
+
module Crunchbase
|
4
|
+
describe PastTeam do
|
5
|
+
describe "advanced indexing" do
|
6
|
+
before(:all) do
|
7
|
+
@all_past_teams = PastTeam.lists_for_permalink("facebook")
|
8
|
+
end
|
9
|
+
|
10
|
+
it "should pull from web api" do
|
11
|
+
@all_past_teams.per_page.should == 1000
|
12
|
+
@all_past_teams.current_page.should == 1
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
require File.join(File.dirname(__FILE__), "..", "spec_helper.rb")
|
2
|
+
require 'json'
|
3
|
+
|
4
|
+
module Crunchbase
|
5
|
+
describe Person do
|
6
|
+
describe "advanced indexing" do
|
7
|
+
before(:all) do
|
8
|
+
@all_person = Person.list
|
9
|
+
end
|
10
|
+
|
11
|
+
it "should pull from web api" do
|
12
|
+
@all_person.per_page.should == 1000
|
13
|
+
@all_person.current_page.should == 1
|
14
|
+
puts @all_person.results[0..10].inspect
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
# it "should pull from web api" do
|
19
|
+
# person = Crunchbase::Person.get('eduardo-saverin')
|
20
|
+
# person.permalink.should == 'eduardo-saverin'
|
21
|
+
# end
|
22
|
+
end
|
23
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
require File.join(File.dirname(__FILE__), "..", "spec_helper.rb")
|
2
|
+
|
3
|
+
module Crunchbase
|
4
|
+
describe PrimaryImage do
|
5
|
+
|
6
|
+
describe "advanced indexing" do
|
7
|
+
before(:all) do
|
8
|
+
@all_primary_image = PrimaryImage.lists_for_permalink("facebook")
|
9
|
+
end
|
10
|
+
|
11
|
+
it "should pull from web api" do
|
12
|
+
@all_primary_image.per_page.should == 1000
|
13
|
+
@all_primary_image.current_page.should == 1
|
14
|
+
end
|
15
|
+
|
16
|
+
it "should get a company all primary image list" do
|
17
|
+
@all_primary_image.items[0].title.should == nil
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
require File.join(File.dirname(__FILE__), "..", "spec_helper.rb")
|
2
|
+
|
3
|
+
module Crunchbase
|
4
|
+
describe Product do
|
5
|
+
|
6
|
+
describe "advanced indexing" do
|
7
|
+
before(:all) do
|
8
|
+
@all_products = Product.lists_for_permalink("facebook")
|
9
|
+
end
|
10
|
+
|
11
|
+
it "should pull from web api" do
|
12
|
+
@all_products.per_page.should == 1000
|
13
|
+
@all_products.current_page.should == 1
|
14
|
+
@all_products.size.should == 16
|
15
|
+
@all_products.results.count.should == 16
|
16
|
+
puts @all_products.results.inspect
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
# it "should pull from web api" do
|
21
|
+
# product = Product.get("internet-org")
|
22
|
+
|
23
|
+
# product.name.should == "Internet.org"
|
24
|
+
# product.permalink.should == "internet-org"
|
25
|
+
# end
|
26
|
+
|
27
|
+
end
|
28
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
require File.join(File.dirname(__FILE__), "..", "spec_helper.rb")
|
2
|
+
require 'net/http'
|
3
|
+
|
4
|
+
module Crunchbase
|
5
|
+
describe SearchResult do
|
6
|
+
|
7
|
+
before(:all) do
|
8
|
+
@result = Search.find('google').results[0]
|
9
|
+
end
|
10
|
+
|
11
|
+
it "should return the entity which is named" do
|
12
|
+
@result.name.should == 'Google'
|
13
|
+
end
|
14
|
+
|
15
|
+
end
|
16
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
require File.join(File.dirname(__FILE__), "..", "spec_helper.rb")
|
2
|
+
require 'net/http'
|
3
|
+
|
4
|
+
module Crunchbase
|
5
|
+
describe Search do
|
6
|
+
|
7
|
+
it "should retrieve search results" do
|
8
|
+
s = Search.search('google')
|
9
|
+
puts s.total_items
|
10
|
+
puts s.per_page
|
11
|
+
puts s.pages
|
12
|
+
puts s.current_page
|
13
|
+
s.results.each { |result| puts result.name }
|
14
|
+
end
|
15
|
+
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
require File.join(File.dirname(__FILE__), "..", "spec_helper.rb")
|
2
|
+
|
3
|
+
module Crunchbase
|
4
|
+
describe SubOrganization do
|
5
|
+
|
6
|
+
describe "advanced indexing" do
|
7
|
+
before(:all) do
|
8
|
+
@all_sub_organizations = SubOrganization.lists_for_permalink("facebook")
|
9
|
+
end
|
10
|
+
|
11
|
+
it "should pull from web api" do
|
12
|
+
@all_sub_organizations.per_page.should == 1000
|
13
|
+
@all_sub_organizations.current_page.should == 1
|
14
|
+
@all_sub_organizations.size.should == 2
|
15
|
+
|
16
|
+
puts @all_sub_organizations.items.inspect
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
end
|
21
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
require File.join(File.dirname(__FILE__), "..", "spec_helper.rb")
|
2
|
+
|
3
|
+
module Crunchbase
|
4
|
+
describe Website do
|
5
|
+
|
6
|
+
describe "advanced indexing" do
|
7
|
+
before(:all) do
|
8
|
+
@all_websites = Website.lists_for_permalink("facebook")
|
9
|
+
end
|
10
|
+
|
11
|
+
it "should pull from web api" do
|
12
|
+
puts @all_websites.items.first.title
|
13
|
+
puts @all_websites.next_page_url
|
14
|
+
|
15
|
+
@all_websites.per_page.should == 1000
|
16
|
+
@all_websites.current_page.should == 1
|
17
|
+
@all_websites.items.count.should == 6
|
18
|
+
end
|
19
|
+
|
20
|
+
it "Show Top 8 websites" do
|
21
|
+
puts @all_websites.items.inspect
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,82 @@
|
|
1
|
+
{
|
2
|
+
"metadata": {
|
3
|
+
"version": 2,
|
4
|
+
"www_path_prefix": "http://www.crunchbase.com/",
|
5
|
+
"api_path_prefix": "http://api.crunchbase.com/v/2/",
|
6
|
+
"image_path_prefix": "http://images.crunchbase.com/"
|
7
|
+
},
|
8
|
+
"data": {
|
9
|
+
"uuid": "7a3d7915ed43073c0e4b5b0d7601def8",
|
10
|
+
"type": "Acquisition",
|
11
|
+
"properties": {
|
12
|
+
"announced_on_year": 2014,
|
13
|
+
"announced_on_day": 7,
|
14
|
+
"announced_on_month": 8,
|
15
|
+
"announced_on": "2014-08-07",
|
16
|
+
"announced_on_trust_code": 7,
|
17
|
+
"price_currency_code": "USD",
|
18
|
+
"permalink": "7a3d7915ed43073c0e4b5b0d7601def8",
|
19
|
+
"name": "Acquisition",
|
20
|
+
"payment_type": null,
|
21
|
+
"price": null,
|
22
|
+
"disposition_of_acquired": null,
|
23
|
+
"acquisition_type": "Acquisition",
|
24
|
+
"acquisition_status": "Complete",
|
25
|
+
"price_usd": null,
|
26
|
+
"created_at": 1407440714,
|
27
|
+
"updated_at": 1407440714
|
28
|
+
},
|
29
|
+
"relationships": {
|
30
|
+
"acquirer": {
|
31
|
+
"paging": {
|
32
|
+
"total_items": 1,
|
33
|
+
"first_page_url": "http://api.crunchbase.com/v/2/acquisition/7a3d7915ed43073c0e4b5b0d7601def8/acquirer",
|
34
|
+
"sort_order": "created_at DESC"
|
35
|
+
},
|
36
|
+
"items": [
|
37
|
+
{
|
38
|
+
"type": "Organization",
|
39
|
+
"name": "Facebook",
|
40
|
+
"path": "organization/facebook",
|
41
|
+
"created_at": 1180153335,
|
42
|
+
"updated_at": 1408498922
|
43
|
+
}
|
44
|
+
]
|
45
|
+
},
|
46
|
+
"acquiree": {
|
47
|
+
"paging": {
|
48
|
+
"total_items": 1,
|
49
|
+
"first_page_url": "http://api.crunchbase.com/v/2/acquisition/7a3d7915ed43073c0e4b5b0d7601def8/acquiree",
|
50
|
+
"sort_order": "created_at DESC"
|
51
|
+
},
|
52
|
+
"items": [
|
53
|
+
{
|
54
|
+
"type": "Organization",
|
55
|
+
"name": "PrivateCore",
|
56
|
+
"path": "organization/privatecore",
|
57
|
+
"created_at": 1339064229,
|
58
|
+
"updated_at": 1397987412
|
59
|
+
}
|
60
|
+
]
|
61
|
+
},
|
62
|
+
"news": {
|
63
|
+
"paging": {
|
64
|
+
"total_items": 1,
|
65
|
+
"first_page_url": "http://api.crunchbase.com/v/2/acquisition/7a3d7915ed43073c0e4b5b0d7601def8/news",
|
66
|
+
"sort_order": "created_at DESC"
|
67
|
+
},
|
68
|
+
"items": [
|
69
|
+
{
|
70
|
+
"url": "http://techcrunch.com/2014/08/07/facebook-buys-secure-server-technology-provider-privatecore/",
|
71
|
+
"author": null,
|
72
|
+
"posted_on": null,
|
73
|
+
"type": "PressReference",
|
74
|
+
"title": "Facebook Buys Secure Server Technology Provider PrivateCore | TechCrunch",
|
75
|
+
"created_at": 1407466104,
|
76
|
+
"updated_at": 1407466104
|
77
|
+
}
|
78
|
+
]
|
79
|
+
}
|
80
|
+
}
|
81
|
+
}
|
82
|
+
}
|
@@ -0,0 +1,96 @@
|
|
1
|
+
{
|
2
|
+
"metadata": {
|
3
|
+
"version": 2,
|
4
|
+
"www_path_prefix": "http://www.crunchbase.com/",
|
5
|
+
"api_path_prefix": "http://api.crunchbase.com/v/2/",
|
6
|
+
"image_path_prefix": "http://images.crunchbase.com/"
|
7
|
+
},
|
8
|
+
"data": {
|
9
|
+
"uuid": "37bd05f961af726ba3c1b279da842805",
|
10
|
+
"type": "FundingRound",
|
11
|
+
"properties": {
|
12
|
+
"post_money_valuation_currency_code": "USD",
|
13
|
+
"funding_type": "private_equity",
|
14
|
+
"money_raised_usd": 1500000000,
|
15
|
+
"announced_on_year": 2011,
|
16
|
+
"announced_on_day": 21,
|
17
|
+
"announced_on_month": 1,
|
18
|
+
"announced_on": "2011-01-21",
|
19
|
+
"announced_on_trust_code": 7,
|
20
|
+
"canonical_currency_code": "USD",
|
21
|
+
"money_raised": 1500000000,
|
22
|
+
"money_raised_currency_code": "USD",
|
23
|
+
"permalink": "37bd05f961af726ba3c1b279da842805",
|
24
|
+
"name": "Facebook raises 1500000000 in private_equity round",
|
25
|
+
"created_at": 1295843747,
|
26
|
+
"updated_at": 1398009912
|
27
|
+
},
|
28
|
+
"relationships": {
|
29
|
+
"investments": {
|
30
|
+
"paging": {
|
31
|
+
"total_items": 2,
|
32
|
+
"first_page_url": "http://api.crunchbase.com/v/2/funding-round/37bd05f961af726ba3c1b279da842805/investments",
|
33
|
+
"sort_order": "created_at DESC"
|
34
|
+
},
|
35
|
+
"items": [
|
36
|
+
{
|
37
|
+
"type": "InvestorInvestment",
|
38
|
+
"money_invested": null,
|
39
|
+
"money_invested_currency_code": null,
|
40
|
+
"money_invested_usd": null,
|
41
|
+
"investor": {
|
42
|
+
"type": "Organization",
|
43
|
+
"name": "Digital Sky Technologies",
|
44
|
+
"path": "organization/digital-sky-technologies-fo"
|
45
|
+
}
|
46
|
+
},
|
47
|
+
{
|
48
|
+
"type": "InvestorInvestment",
|
49
|
+
"money_invested": null,
|
50
|
+
"money_invested_currency_code": null,
|
51
|
+
"money_invested_usd": null,
|
52
|
+
"investor": {
|
53
|
+
"type": "Organization",
|
54
|
+
"name": "Goldman Sachs",
|
55
|
+
"path": "organization/goldman-sachs"
|
56
|
+
}
|
57
|
+
}
|
58
|
+
]
|
59
|
+
},
|
60
|
+
"funded_organization": {
|
61
|
+
"paging": {
|
62
|
+
"total_items": 1,
|
63
|
+
"first_page_url": "http://api.crunchbase.com/v/2/funding-round/37bd05f961af726ba3c1b279da842805/funded_organization",
|
64
|
+
"sort_order": "created_at DESC"
|
65
|
+
},
|
66
|
+
"items": [
|
67
|
+
{
|
68
|
+
"type": "Organization",
|
69
|
+
"name": "Facebook",
|
70
|
+
"path": "organization/facebook",
|
71
|
+
"created_at": 1180153335,
|
72
|
+
"updated_at": 1408493973
|
73
|
+
}
|
74
|
+
]
|
75
|
+
},
|
76
|
+
"news": {
|
77
|
+
"paging": {
|
78
|
+
"total_items": 1,
|
79
|
+
"first_page_url": "http://api.crunchbase.com/v/2/funding-round/37bd05f961af726ba3c1b279da842805/news",
|
80
|
+
"sort_order": "created_at DESC"
|
81
|
+
},
|
82
|
+
"items": [
|
83
|
+
{
|
84
|
+
"url": "http://www.prnewswire.com/news-releases/facebook-raises-15-billion-114383494.html",
|
85
|
+
"author": null,
|
86
|
+
"posted_on": null,
|
87
|
+
"type": "PressReference",
|
88
|
+
"title": "Facebook Raises $1.5 Billion -- PALO ALTO, Calif., Jan. 21, 2011 /PRNewswire/ --",
|
89
|
+
"created_at": 1295843747,
|
90
|
+
"updated_at": 1398009912
|
91
|
+
}
|
92
|
+
]
|
93
|
+
}
|
94
|
+
}
|
95
|
+
}
|
96
|
+
}
|