google_play_search 0.0.6 → 0.0.7

Sign up to get free protection for your applications and to get access to all the features.
@@ -9,8 +9,8 @@ module GooglePlaySearch
9
9
  end
10
10
  def parse
11
11
  app_search_result_list = []
12
- if @doc.css("li.search-results-item div.snippet").size > 0
13
- @doc.css("li.search-results-item div.snippet").each do |app_content|
12
+ if @doc.css("div.card-list div.card").size > 0
13
+ @doc.css("div.card-list div.card").each do |app_content|
14
14
  app_search_result_list << create_app(app_content)
15
15
  end
16
16
  else
@@ -23,7 +23,7 @@ module GooglePlaySearch
23
23
 
24
24
  private
25
25
  def get_url(app_content)
26
- url = $GOOGLE_PLAY_STORE_BASE_URL + app_content.css("div.thumbnail-wrapper a").first['href']
26
+ url = $GOOGLE_PLAY_STORE_BASE_URL + app_content.css("div.cover a.card-content-link").first['href']
27
27
  if url.end_with?(SEARCH_APP_URL_END_SUFF)
28
28
  url = url[0..-1* (SEARCH_APP_URL_END_SUFF.size + 1)]
29
29
  end
@@ -31,15 +31,15 @@ module GooglePlaySearch
31
31
  end
32
32
 
33
33
  def get_logo_url(app_content)
34
- app_content.css("div.thumbnail-wrapper a.thumbnail img").first['src']
34
+ app_content.css("div.cover div.cover-inner-align img").first['src']
35
35
  end
36
36
 
37
37
  def get_name(app_content)
38
- app_content.css("div.details a.title").first.content
38
+ app_content.css("div.details a.title").first.content.strip
39
39
  end
40
40
 
41
41
  def get_developer(app_content)
42
- deleloper_contents_list = app_content.css("div.details div.attribution-category span.attribution a")
42
+ deleloper_contents_list = app_content.css("div.details div.subtitle-container a.subtitle")
43
43
  if deleloper_contents_list && deleloper_contents_list.size > 0
44
44
  return deleloper_contents_list.first.content
45
45
  else
@@ -62,17 +62,17 @@ module GooglePlaySearch
62
62
  def get_short_description(app_content)
63
63
  description_contents = app_content.css("div.description")
64
64
  if description_contents && description_contents.size > 0
65
- return description_contents.first.content
65
+ return description_contents.first.content.strip
66
66
  end
67
67
  return ""
68
68
  end
69
69
 
70
70
  def get_app_rating(app_content)
71
- ratings = app_content.css("div.ratings")
72
- if ratings && ratings.size > 0
73
- rating_str = ratings.first['title']
71
+ ratings = app_content.css("div.current-rating")
72
+ if ratings
73
+ rating_str = ratings.first['style']
74
74
  unless rating_str.empty?
75
- return rating_str[/\d+\.?\d?/].to_f
75
+ return rating_str[/\d+\.?\d?/].to_f / 100 * 5
76
76
  end
77
77
  return 0
78
78
  end
@@ -86,9 +86,9 @@ module GooglePlaySearch
86
86
  end
87
87
 
88
88
  def get_app_price(app_content)
89
- prices = app_content.css("span.buy-button-price")
90
- if prices && prices.size > 0
91
- if match = prices.first.content.match(/(.[0-9]*\.[0-9]+|[0-9]+) Buy/)
89
+ prices = app_content.css("div.details span.price span")
90
+ if prices
91
+ if match = prices.first.content.match(/(.[0-9]*\.[0-9]+|[0-9]+)/)
92
92
  return match[1]
93
93
  end
94
94
  end
@@ -102,11 +102,9 @@ module GooglePlaySearch
102
102
  app.name = get_name app_content
103
103
  app.price = get_app_price app_content
104
104
  app.developer = get_developer app_content
105
- app.category = get_category app_content
106
105
  app.logo_url = get_logo_url app_content
107
106
  app.short_description = get_short_description app_content
108
107
  app.rating = get_app_rating app_content
109
- app.reviews = get_app_reviews app_content
110
108
  return app
111
109
  end
112
110
  end
@@ -8,13 +8,13 @@ module GooglePlaySearch
8
8
  class Search
9
9
  attr_accessor :current_page, :keyword
10
10
 
11
- $GOOGLE_PLAY_STORE_BASE_URL = "https://play.google.com"
11
+ $GOOGLE_PLAY_STORE_BASE_URL = "https://play.google.com"
12
12
 
13
- GOOGLE_PLAY_BASE_SEARCH_URL = $GOOGLE_PLAY_STORE_BASE_URL + "/store/search?q="
13
+ GOOGLE_PLAY_BASE_SEARCH_URL = $GOOGLE_PLAY_STORE_BASE_URL + "/store/search?q="
14
14
 
15
- DEFAULT_SEARCH_CONDITION = {:language => "en",
16
- :category => "apps",
17
- :per_page_num => 24,
15
+ DEFAULT_SEARCH_CONDITION = {:language => "en",
16
+ :category => "apps",
17
+ :per_page_num => 24,
18
18
  :price => "0",
19
19
  :safe_search => "0",
20
20
  :sort_by => "1"}
@@ -52,4 +52,3 @@ module GooglePlaySearch
52
52
  end
53
53
  end
54
54
 
55
-
metadata CHANGED
@@ -1,27 +1,30 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google_play_search
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.6
4
+ version: 0.0.7
5
+ prerelease:
5
6
  platform: ruby
6
7
  authors:
7
8
  - Grant Chen
8
9
  autorequire:
9
10
  bindir: bin
10
11
  cert_chain: []
11
- date: 2012-06-03 00:00:00.000000000 Z
12
+ date: 2012-07-16 00:00:00.000000000 Z
12
13
  dependencies:
13
14
  - !ruby/object:Gem::Dependency
14
15
  name: nokogiri
15
16
  requirement: !ruby/object:Gem::Requirement
17
+ none: false
16
18
  requirements:
17
- - - '>='
19
+ - - ! '>='
18
20
  - !ruby/object:Gem::Version
19
21
  version: 1.5.3
20
22
  type: :runtime
21
23
  prerelease: false
22
24
  version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
23
26
  requirements:
24
- - - '>='
27
+ - - ! '>='
25
28
  - !ruby/object:Gem::Version
26
29
  version: 1.5.3
27
30
  description: google play market search gem
@@ -31,30 +34,32 @@ extensions: []
31
34
  extra_rdoc_files: []
32
35
  files:
33
36
  - lib/google_play_search.rb
34
- - lib/google_play_search/search.rb
35
- - lib/google_play_search/app_parser.rb
36
37
  - lib/google_play_search/app.rb
38
+ - lib/google_play_search/app_parser.rb
39
+ - lib/google_play_search/search.rb
37
40
  homepage: https://github.com/grantchen/google_play_search
38
41
  licenses: []
39
- metadata: {}
40
42
  post_install_message:
41
43
  rdoc_options: []
42
44
  require_paths:
43
45
  - lib
44
46
  required_ruby_version: !ruby/object:Gem::Requirement
47
+ none: false
45
48
  requirements:
46
- - - '>='
49
+ - - ! '>='
47
50
  - !ruby/object:Gem::Version
48
51
  version: '0'
49
52
  required_rubygems_version: !ruby/object:Gem::Requirement
53
+ none: false
50
54
  requirements:
51
- - - '>='
55
+ - - ! '>='
52
56
  - !ruby/object:Gem::Version
53
57
  version: '0'
54
58
  requirements: []
55
59
  rubyforge_project:
56
- rubygems_version: 2.0.0.rc.2
60
+ rubygems_version: 1.8.25
57
61
  signing_key:
58
- specification_version: 4
62
+ specification_version: 3
59
63
  summary: google play market search
60
64
  test_files: []
65
+ has_rdoc:
checksums.yaml DELETED
@@ -1,7 +0,0 @@
1
- ---
2
- SHA1:
3
- metadata.gz: b4166b35ed26f6d6658a42b8de2e8b152788143f
4
- data.tar.gz: ab3e879355c59c5c9247cea891af6899a0babb44
5
- SHA512:
6
- metadata.gz: 2c64bf7eaa2d536f714293213015e50a150f26204b79c46e1ded793eb6c00af6088b5b10f3ad2127e256575169972140d0970852cd1ae625a5384fffc9efcb48
7
- data.tar.gz: 225884c444c6c50b64c33ec81bab2bfd1405527d441c1387c8a23eae565e3cb2e241f9d1ce8a8900152ce447a908b0f30dfee1389f88cbdd185d94f88d1f4f3c