google_play_search 0.0.13 → 0.0.14
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/google_play_search/app.rb +35 -1
- data/lib/google_play_search/app_parser.rb +0 -7
- data/lib/google_play_search/review.rb +5 -0
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: bf7c31a06fe864d133224e62a0cf97a21ce24922
|
4
|
+
data.tar.gz: 9c92cabac9058324ffde32430ee92744fc8f796f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bf92ce8cd90750d47bae442505c43757d2e21696d8c8a031386eddb97d4dd41e7934c9e67adb2d599103211f37f75a504fc73b789b2b48635298de8d7e12c813
|
7
|
+
data.tar.gz: afbb51a30149912eb4c0616cc3e2e8a344437089dbe2727971aed6b02d7db818130db685766e9c0d59f4167d5a0c4f1233207790f32293e1da939d924813f145
|
@@ -1,10 +1,13 @@
|
|
1
1
|
require 'open-uri'
|
2
|
+
require File.expand_path(File.dirname(__FILE__) + '/review')
|
3
|
+
|
2
4
|
module GooglePlaySearch
|
3
5
|
class App
|
4
6
|
attr_accessor :id, :name, :url, :developer, :category, :logo_url,
|
5
7
|
:short_description, :rating, :reviews, :price,
|
6
8
|
:version, :installs, :last_updated, :size,
|
7
|
-
:requires_android, :content_rating
|
9
|
+
:requires_android, :content_rating, :developer_website,
|
10
|
+
:developer_email, :developer_address
|
8
11
|
|
9
12
|
def get_all_details()
|
10
13
|
html = open(self.url).read()
|
@@ -17,6 +20,10 @@ module GooglePlaySearch
|
|
17
20
|
self.requires_android = get_requires_android(google_play_html)
|
18
21
|
self.content_rating = get_content_rating(google_play_html)
|
19
22
|
self.category = get_category(google_play_html)
|
23
|
+
self.developer_website = get_developer_website(google_play_html)
|
24
|
+
self.developer_email = get_developer_email(google_play_html)
|
25
|
+
self.developer_address = get_developer_address(google_play_html)
|
26
|
+
self.reviews = get_reviews(google_play_html)
|
20
27
|
self
|
21
28
|
rescue
|
22
29
|
self
|
@@ -51,5 +58,32 @@ module GooglePlaySearch
|
|
51
58
|
def get_category(google_play_html)
|
52
59
|
google_play_html.search("span[itemprop='genre']").first.content.strip
|
53
60
|
end
|
61
|
+
|
62
|
+
def get_developer_website(google_play_html)
|
63
|
+
url = google_play_html.search("a[class='dev-link']").first['href'].strip.gsub("https://www.google.com/url?q=", "")
|
64
|
+
url[0..(url.index("&") - 1)]
|
65
|
+
end
|
66
|
+
|
67
|
+
def get_developer_email(google_play_html)
|
68
|
+
google_play_html.search("a[class='dev-link']").last.content.strip.gsub("Email ", "")
|
69
|
+
end
|
70
|
+
|
71
|
+
def get_developer_address(google_play_html)
|
72
|
+
google_play_html.search("div[class='content physical-address']").first.content.strip
|
73
|
+
end
|
74
|
+
|
75
|
+
def get_reviews(google_play_html)
|
76
|
+
reviews = []
|
77
|
+
google_play_html.search("div[class='single-review']").each do |ele|
|
78
|
+
review = GooglePlaySearch::Review.new()
|
79
|
+
review.author_name = ele.search("span[class='author-name']").first.content.strip
|
80
|
+
review.author_avatar = ele.search("img[class='author-image']").first['src'].strip
|
81
|
+
review.review_title = ele.search("span[class='review-title']").first.content.strip
|
82
|
+
review.review_content = ele.search("div[class='review-body']").children[2].content.strip
|
83
|
+
review.star_rating = ele.search("div[class='tiny-star star-rating-non-editable-container']").first['aria-label'].scan(/\d/).first.to_i
|
84
|
+
reviews << review
|
85
|
+
end
|
86
|
+
reviews
|
87
|
+
end
|
54
88
|
end
|
55
89
|
end
|
@@ -78,13 +78,6 @@ module GooglePlaySearch
|
|
78
78
|
end
|
79
79
|
end
|
80
80
|
|
81
|
-
def get_app_reviews(app_content)
|
82
|
-
reviews = app_content.css("span.snippet-reviews")
|
83
|
-
if reviews && reviews.size > 0
|
84
|
-
reviews.first.content[1..-2].gsub(',','').to_i
|
85
|
-
end
|
86
|
-
end
|
87
|
-
|
88
81
|
def get_app_price(app_content)
|
89
82
|
prices = app_content.css("div.details span.price-container button.price span")
|
90
83
|
if prices and prices.first
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: google_play_search
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.14
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Grant Chen
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-07-
|
11
|
+
date: 2015-07-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: nokogiri
|
@@ -33,6 +33,7 @@ files:
|
|
33
33
|
- lib/google_play_search.rb
|
34
34
|
- lib/google_play_search/app.rb
|
35
35
|
- lib/google_play_search/app_parser.rb
|
36
|
+
- lib/google_play_search/review.rb
|
36
37
|
- lib/google_play_search/search.rb
|
37
38
|
homepage: https://github.com/grantchen/google_play_search
|
38
39
|
licenses:
|