linkedindata 0.0.21 → 0.0.22

Sign up to get free protection for your applications and to get access to all the features.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/lib/linkedin.rb +9 -6
  3. data/lib/linkedindata.rb +11 -1
  4. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 2ff082196f99b4e8ad4415d3859bb1083d167aee
4
- data.tar.gz: 71fe3d75d04a8216fe08f56a4869a24f92140b5d
3
+ metadata.gz: 5565d9fa31827b9a1d1abfff886dfd04510dc536
4
+ data.tar.gz: eb75c5bb0c6b838eb848ec6aed32ab4f6b446421
5
5
  SHA512:
6
- metadata.gz: 6023a233428aa06d15cd2ce154de40e7948e8870229cc7ea5b94d3e4aad4a2c7dc557b8b24ca230f5e0ae895f1224a5f6b604798e4bfe0d6b6bd0ac6fe94eb9a
7
- data.tar.gz: 91f1e1f011d3774e32b863a905ba446891f7d8b7ae906cf1f14010b35017cf4d945cf8539b9dd2e9f192d17bf3b816fdb4cc3153b913204b0fce7a7e259fd0e3
6
+ metadata.gz: 23b1e31326ad48ba8ed6d532a02511ce340f6c3585467854ecbdc00299eb3a0b873a18880d930e5cc72db3e235ac0db7d17c1a52b9692b3151387a9a80b29455
7
+ data.tar.gz: 3390991833fc205b43cedbb92964611e647ac0a0cf052ff48ddc79f4a7faa5f6f14f2216661adb6bf08f83123c0feb9ad071fee2ef96d8e6476c21049a04f5d6
@@ -6,7 +6,7 @@ module Linkedin
6
6
  include ProxyManager
7
7
  include GetRelated
8
8
 
9
- def initialize(url, curhops, proxylist, usedproxies, use_proxies_li)
9
+ def initialize(url, driver, curhops, proxylist, usedproxies, use_proxies_li)
10
10
  @linkedin_url = url
11
11
  @curhops = curhops
12
12
  @proxylist = proxylist
@@ -19,20 +19,23 @@ module Linkedin
19
19
  "timestamp",
20
20
  "degree",
21
21
  "pic_path")
22
-
23
- @page = getPage(url, use_proxies_li) # Get pages with proxies
22
+
23
+ # Get page
24
+ @driver = driver
25
+ @page = Nokogiri::HTML(getPage(url, @driver, nil, 5, use_proxies_li).page_source)
26
+ sleep(10)
24
27
  end
25
28
 
26
29
 
27
- def self.get_profile(url, curhops, proxylist, usedproxies, use_proxies_li)
28
- Linkedin::Profile.new(url, curhops, proxylist, usedproxies, use_proxies_li)
30
+ def self.get_profile(url, driver, curhops, proxylist, usedproxies, use_proxies_li)
31
+ Linkedin::Profile.new(url, driver, curhops, proxylist, usedproxies, use_proxies_li)
29
32
  rescue => e
30
33
  puts e
31
34
  end
32
35
 
33
36
  # Gets "people also viewed list" form profile sidebar
34
37
  def related_people
35
- @related_people ||= getList(Nokogiri::HTML(@page.body))
38
+ @related_people ||= getList(@page)
36
39
  end
37
40
 
38
41
  # Similar to linkedin_url
@@ -28,17 +28,26 @@ class LinkedinData
28
28
  # Searches for profiles on Google
29
29
  def search(search_terms)
30
30
  g = GeneralScraper.new("site:linkedin.com/pub", search_terms, @proxy_list_path, @use_proxy)
31
+ gen_driver
32
+
31
33
  JSON.parse(g.getURLs).each do |profile|
32
34
  scrape(profile, 0)
33
35
  end
34
36
  end
35
37
 
38
+ # Generate driver for searches
39
+ def gen_driver
40
+ profile = Selenium::WebDriver::Firefox::Profile.new
41
+ profile['intl.accept_languages'] = 'en'
42
+ @driver = Selenium::WebDriver.for :firefox, profile: profile
43
+ end
44
+
36
45
  # Scrapes and parses individual profile
37
46
  def scrape(url, curhops)
38
47
  # Download profile and rescue on error
39
48
  begin
40
49
  url.gsub!("https", "http")
41
- profile = Linkedin::Profile.get_profile(url, curhops, @proxylist, @usedproxies, @use_proxy_li)
50
+ profile = Linkedin::Profile.get_profile(url, @driver, curhops, @proxylist, @usedproxies, @use_proxy_li)
42
51
 
43
52
  # Parse profile if returned and add to output
44
53
  @output.concat(parseResume(profile)) if profile
@@ -73,6 +82,7 @@ class LinkedinData
73
82
  def prepareResults
74
83
  getRelatedProfiles
75
84
  deleteDuplicatePics
85
+ @driver.close
76
86
  return JSON.pretty_generate(relScore(showAllKeys(@output)))
77
87
  end
78
88
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: linkedindata
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.21
4
+ version: 0.0.22
5
5
  platform: ruby
6
6
  authors:
7
7
  - M. C. McGrath
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-08-22 00:00:00.000000000 Z
11
+ date: 2015-09-10 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: Scrapes all LinkedIn profiles including terms you specify.
14
14
  email: shidash@shidash.com