kiwicourse 0.5.2 → 0.5.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: bdb74cd2290c2dd87c370bd71f69804289b0bacb
4
- data.tar.gz: d5a50cca50a9024fab55e62460460be6e35015b9
3
+ metadata.gz: f084b9a509a5a7846325dfe174b6ce04c6d0ed1d
4
+ data.tar.gz: 4cdabbbb525b4aaef30f43f35057cdf197bfbb26
5
5
  SHA512:
6
- metadata.gz: 866fe317c2c4858a3cb22614e9f647f18089950c95136dc0f0d11d894277a6713609a34b0e20bffc8a45ae835eef1bec4bf360f618e26ebdbef7da52326e686e
7
- data.tar.gz: 9fd589175bf6e5aeeb92140d627b42c0cacf0876d23baf17a11faf2b76275aa828394015ca6818c4da7c4434ffc55b9e49a6a9de96d3708465591cb101c91497
6
+ metadata.gz: 8c6b6e8ce7bad62982fb358fb7ab49eba17aa5cde8add4064a7bbdddd82d91459bde1f8c4f9d9233843883773e2b3154cce7574d1b0e4a17dd92b1f51301d457
7
+ data.tar.gz: e51c5088ccb248962567103e7839b50f55a836de5f46501333f3b039fa25dd93f37d5cf4958851cab4ad8ae654aa774ee14001a45e4b01c8d316319679f28cef
@@ -1,7 +1,6 @@
1
1
  #!/usr/bin/env ruby
2
2
  require 'digest'
3
3
  require 'thor'
4
- require 'fuzzy_match'
5
4
  require 'launchy'
6
5
  require 'kiwicourse' # for production
7
6
  # require './lib/coursesdesc/courses.rb' # for cmd line testing purposes
@@ -11,10 +10,9 @@ class KiwiCLI < Thor
11
10
  desc 'search COURSENAME', 'Search a course on ShareCourse'
12
11
  def search(coursename)
13
12
  sc = KiwiScraper::OfflineCourses.new.get_instance
14
- result = FuzzyMatch.new(sc.course_name).find(coursename)
15
- input_key = Digest::SHA256.digest result
16
- id = sc.courses_name_to_id_mapping[input_key]
17
- puts "#{id} - #{result}"
13
+ id = sc.search_courses(coursename)['id']
14
+ name = sc.search_courses(coursename)['name']
15
+ puts "#{id} - #{name}"
18
16
  end
19
17
 
20
18
  desc 'list', 'List all courses on ShareCourse'
@@ -2,6 +2,7 @@ require 'oga'
2
2
  require 'open-uri'
3
3
  require 'digest'
4
4
  require 'pp'
5
+ require 'fuzzy_match'
5
6
 
6
7
  module KiwiScraper
7
8
  # parse course description from sharecourse web
@@ -36,7 +37,18 @@ module KiwiScraper
36
37
  @course_id_map ||= map_course_id_to_all
37
38
  end
38
39
 
40
+ def search_courses(keyword)
41
+ @found_cource ||= do_search_course(keyword)
42
+ end
43
+
39
44
  private
45
+
46
+ def do_search_course(keyword)
47
+ result = FuzzyMatch.new(course_name).find(keyword)
48
+ input_key = Digest::SHA256.digest result
49
+ id = courses_name_to_id_mapping[input_key]
50
+ courses_id_to_all_mapping[id]
51
+ end
40
52
 
41
53
  def parse_html
42
54
  @document = Oga.parse_html(open(URL))
@@ -1,5 +1,5 @@
1
1
  # Versioning
2
2
  module CoursesDesc
3
- VERSION = '0.5.2'
3
+ VERSION = '0.5.3'
4
4
  DATE = '2015-10-24'
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kiwicourse
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.2
4
+ version: 0.5.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - John Lin