tinby 0.1.2 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 658d56c4deb81ddffac9bd043c40256540cc1947c9c2aea36d6f95743eea7e48
4
- data.tar.gz: 0c0f3adbcb7d6f7ece8812f38373512aa28cbee8bdf008ee384f6cc7f3258255
3
+ metadata.gz: 9c7461a91a464576f5d3cacc545bda805440a013a44260be1755887c9ac307a7
4
+ data.tar.gz: 37d5933fa6fb1b005c4b89f9428c3bd611ad677999615df11aefce01cce8061b
5
5
  SHA512:
6
- metadata.gz: 493ba8af11e7f26ea2a8ab570b26e960af5db8612781be99df24910de2e33669762d88cd68355ec06194d877c650e7986fdcca90a4cea2eca96c51596aa1cecf
7
- data.tar.gz: 5b5c90c91efa83184ad8a41e629e43a84e8d7c6b6c292c37189992de1aab71686a2d399b2fd61cbb4894de84329d9340edde32ed12ffe6538be8e4e5901b5f12
6
+ metadata.gz: 9bc1b576d7ac4165c2432fced6ce08b4ab332abfb909bff965e257b50313bf0d5f3b7d58b4610fbe0ca7d4285b6b226cf4053aac8a2212a0eb1ab5755628a7de
7
+ data.tar.gz: 1a140f082e66d41a6073e1099aa20445b1f3016300b5674c2115187824c4518b8040cb8eb06f01d49e7d047d44e878f3d7290151572f4d93ce273dc3fa9884a2
data/Gemfile.lock CHANGED
@@ -1,18 +1,15 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- tinby (0.1.2)
4
+ tinby (0.2.0)
5
5
  faraday (~> 0)
6
6
  faraday_middleware (~> 0)
7
7
  json (~> 2.1)
8
- selenium-webdriver (~> 3.13)
9
8
  tinder_auth_fetcher (~> 0)
10
9
 
11
10
  GEM
12
11
  remote: https://rubygems.org/
13
12
  specs:
14
- childprocess (0.9.0)
15
- ffi (~> 1.0, >= 1.0.11)
16
13
  connection_pool (2.2.2)
17
14
  diff-lcs (1.3)
18
15
  domain_name (0.5.20180417)
@@ -21,7 +18,6 @@ GEM
21
18
  multipart-post (>= 1.2, < 3)
22
19
  faraday_middleware (0.12.2)
23
20
  faraday (>= 0.7.4, < 1.0)
24
- ffi (1.9.25)
25
21
  http-cookie (1.0.3)
26
22
  domain_name (~> 0.5)
27
23
  json (2.1.0)
@@ -59,10 +55,6 @@ GEM
59
55
  diff-lcs (>= 1.2.0, < 2.0)
60
56
  rspec-support (~> 3.7.0)
61
57
  rspec-support (3.7.1)
62
- rubyzip (1.2.1)
63
- selenium-webdriver (3.13.1)
64
- childprocess (~> 0.5)
65
- rubyzip (~> 1.2)
66
58
  tinder_auth_fetcher (0.1.0)
67
59
  mechanize (~> 2.0)
68
60
  unf (0.1.4)
data/README.md CHANGED
@@ -22,7 +22,87 @@ Or install it yourself as:
22
22
 
23
23
  ## Usage
24
24
 
25
- TODO: WIP
25
+ First, initialize Tinby::Client with your registered facebook email, your registered facebook password, your facebook url:
26
+
27
+ ```
28
+ client = Tinby::Client.new(REGISTERED_FACEBOOK_EMAIL, REGISTERED_FACEBOOK_PASSWORD, FACEBOOK_URL)
29
+ ```
30
+
31
+ If you want to get your profile ? like this:
32
+ ```
33
+ client.profile
34
+ ```
35
+
36
+ If you want to get recommended users ? like this:
37
+ ```
38
+ client.recommended_users
39
+ ```
40
+ and they return JSON:
41
+
42
+ ```
43
+ [{
44
+ "group_matched" => false,
45
+ "distance_mi" => 0,
46
+ "content_hash" => "xxxxxxxxxxxxxxxxx",
47
+ "common_friends" => [],
48
+ "common_likes" => [],
49
+ "common_friend_count" => 0,
50
+ "common_like_count" => 0,
51
+ "connection_count" => 0,
52
+ "_id" => "xxxxxxxxxxxxxxxxx",
53
+ "bio" => "xxxxxxxxxxxxxxxxx",
54
+ "birth_date" => "xxxxxxxxxxxxxxxxx",
55
+ "name" => "xxxxxxxxxxxxxxxxx",
56
+ "ping_time" => "2099-01-01T00:00:00.000Z",
57
+ "photos" => [
58
+ [0] {
59
+ "id" => "xxxxxxxxxxxxxxxxx",
60
+ "url" => "https://xxxxxxxxxxxxxxxxx.jpg",
61
+ "processedFiles" => [
62
+ [0] {
63
+ "url" => "https://xxxxxxxxxxxxxxxxx.jpg",
64
+ "height" => 640,
65
+ "width" => 640
66
+ },
67
+ ],
68
+ "fileName" => "xxxxxxxxxxxxxxxxx.jpg",
69
+ "extension" => "jpg"
70
+ }
71
+ ],
72
+ "jobs" => [],
73
+ "schools" => [],
74
+ "teaser" => {
75
+ "string" => ""
76
+ },
77
+ "teasers" => [],
78
+ "gender" => 1,
79
+ "birth_date_info" => "",
80
+ "s_number" => 99999999999999999999999999
81
+ }]
82
+ ```
83
+
84
+ If you want to like someone ? like this:
85
+ ```
86
+ client.like(user_id)
87
+ ```
88
+
89
+ If you want to dislike someone ? like this:
90
+ ```
91
+ client.dislike(user_id)
92
+ ```
93
+
94
+ ## references
95
+
96
+ find facebook id
97
+ ```
98
+ https://findmyfbid.com
99
+ ```
100
+
101
+ how to get tinder auth token
102
+ ```
103
+ https://gist.github.com/taseppa/66fc7239c66ef285ecb28b400b556938
104
+ ```
105
+
26
106
 
27
107
  ## Development
28
108
 
data/lib/tinby/client.rb CHANGED
@@ -8,13 +8,12 @@ module Tinby
8
8
  TINDER_API_URL = 'https://api.gotinder.com'.freeze
9
9
  CONNECTION_USER_AGENT = 'Tinder/7.5.3 (iPhone; iOS 10.3.2; Scale/2.00)'.freeze
10
10
 
11
- attr_reader :connection, :email, :password, :facebook
11
+ attr_reader :connection, :email, :password
12
12
  attr_accessor :logined
13
13
 
14
- def initialize(email, password, profile_url)
14
+ def initialize(email, password)
15
15
  @email = email
16
16
  @password = password
17
- @facebook = Tinby::Facebook.new(profile_url)
18
17
  @logined = false
19
18
  build_tinder_connection
20
19
  end
@@ -73,7 +72,7 @@ module Tinby
73
72
  end
74
73
 
75
74
  def auth_request
76
- connection.post('/auth', facebook_token: facebook_authentication_token, facebook_id: facebook_user_id).body
75
+ connection.post('/auth', facebook_token: facebook_authentication_token).body
77
76
  end
78
77
 
79
78
  def build_tinder_connection
@@ -87,9 +86,5 @@ module Tinby
87
86
  def facebook_authentication_token
88
87
  TinderAuthFetcher.fetch_token(email, password)
89
88
  end
90
-
91
- def facebook_user_id
92
- facebook.fetch_facebook_id
93
- end
94
89
  end
95
90
  end
data/lib/tinby/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Tinby
2
- VERSION = '0.1.2'.freeze
2
+ VERSION = '0.2.0'.freeze
3
3
  end
data/tinby.gemspec CHANGED
@@ -29,6 +29,5 @@ Gem::Specification.new do |spec|
29
29
  spec.add_dependency 'faraday', '~> 0'
30
30
  spec.add_dependency 'faraday_middleware', '~> 0'
31
31
  spec.add_dependency 'json', '~> 2.1'
32
- spec.add_dependency 'selenium-webdriver', '~> 3.13'
33
32
  spec.add_dependency 'tinder_auth_fetcher', '~> 0'
34
33
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tinby
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - joe
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-07-23 00:00:00.000000000 Z
11
+ date: 2018-07-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -94,20 +94,6 @@ dependencies:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
96
  version: '2.1'
97
- - !ruby/object:Gem::Dependency
98
- name: selenium-webdriver
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - "~>"
102
- - !ruby/object:Gem::Version
103
- version: '3.13'
104
- type: :runtime
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - "~>"
109
- - !ruby/object:Gem::Version
110
- version: '3.13'
111
97
  - !ruby/object:Gem::Dependency
112
98
  name: tinder_auth_fetcher
113
99
  requirement: !ruby/object:Gem::Requirement
@@ -142,7 +128,6 @@ files:
142
128
  - bin/setup
143
129
  - lib/tinby.rb
144
130
  - lib/tinby/client.rb
145
- - lib/tinby/facebook.rb
146
131
  - lib/tinby/version.rb
147
132
  - tinby.gemspec
148
133
  homepage: https://github.com/Cam1no/tinby.git
@@ -1,44 +0,0 @@
1
- require 'selenium-webdriver'
2
- module Tinby
3
- class Facebook
4
- FIND_FACEBOOK_ID_URL = 'https://findmyfbid.com'.freeze
5
-
6
- attr_reader :driver, :profile_url
7
-
8
- def initialize(profile_url)
9
- @profile_url = profile_url
10
- @driver = initialize_selenium_driver
11
- end
12
-
13
- def fetch_facebook_id
14
- open_findfbid
15
- fill_in_user_profile_url
16
- submit
17
- find_facebook_id
18
- end
19
-
20
- private
21
-
22
- def initialize_selenium_driver
23
- options = Selenium::WebDriver::Chrome::Options.new
24
- options.add_argument('--headless')
25
- Selenium::WebDriver.for :chrome, options: options
26
- end
27
-
28
- def open_findfbid
29
- driver.get(FIND_FACEBOOK_ID_URL)
30
- end
31
-
32
- def fill_in_user_profile_url
33
- driver.find_element(:name, 'url').send_keys(profile_url)
34
- end
35
-
36
- def submit
37
- driver.find_element(:class, 'btn').click
38
- end
39
-
40
- def find_facebook_id
41
- driver.find_element(:tag_name, 'code').text
42
- end
43
- end
44
- end