Class: Arbitrage::NearbyCraigslists
- Inherits:
-
Object
- Object
- Arbitrage::NearbyCraigslists
- Defined in:
- lib/arbitrage/nearby-craigslists.rb
Instance Attribute Summary collapse
-
#all_indexes ⇒ Object
Returns the value of attribute all_indexes.
-
#original_product ⇒ Object
Returns the value of attribute original_product.
-
#scraper ⇒ Object
Returns the value of attribute scraper.
Instance Method Summary collapse
- #find_nearby_url(zipcode) ⇒ Object
-
#initialize(original_product, scraper) ⇒ NearbyCraigslists
constructor
A new instance of NearbyCraigslists.
- #next_two_craigslists ⇒ Object
- #prev_two_craigslists ⇒ Object
- #save_all_indexes ⇒ Object
- #save_original_url ⇒ Object
- #url_stored?(zipcode) ⇒ Boolean
Constructor Details
#initialize(original_product, scraper) ⇒ NearbyCraigslists
Returns a new instance of NearbyCraigslists.
4 5 6 7 8 |
# File 'lib/arbitrage/nearby-craigslists.rb', line 4 def initialize(original_product,scraper) self.scraper = scraper self.all_indexes = [] self.original_product = original_product end |
Instance Attribute Details
#all_indexes ⇒ Object
Returns the value of attribute all_indexes.
2 3 4 |
# File 'lib/arbitrage/nearby-craigslists.rb', line 2 def all_indexes @all_indexes end |
#original_product ⇒ Object
Returns the value of attribute original_product.
2 3 4 |
# File 'lib/arbitrage/nearby-craigslists.rb', line 2 def original_product @original_product end |
#scraper ⇒ Object
Returns the value of attribute scraper.
2 3 4 |
# File 'lib/arbitrage/nearby-craigslists.rb', line 2 def scraper @scraper end |
Instance Method Details
#find_nearby_url(zipcode) ⇒ Object
50 51 52 53 54 55 56 57 58 59 60 61 |
# File 'lib/arbitrage/nearby-craigslists.rb', line 50 def find_nearby_url(zipcode) nearby_url = "" csv_data = File.read('rsc/clzips.csv') rows = csv_data.split("\n") people = rows.collect do |row| data = row.split(",") if data[1].to_i == zipcode nearby_url= data[0] end end nearby_url end |
#next_two_craigslists ⇒ Object
19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/arbitrage/nearby-craigslists.rb', line 19 def next_two_craigslists i=0 zipcode = self.original_product.zipcode.to_i until i == 2 zipcode += 1 if !(url_stored?(zipcode)) && find_nearby_url(zipcode) != "" self.all_indexes << find_nearby_url(zipcode) i += 1 end end end |
#prev_two_craigslists ⇒ Object
32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/arbitrage/nearby-craigslists.rb', line 32 def prev_two_craigslists i=0 zipcode = self.original_product.zipcode.to_i until i == 2 zipcode -= 1 if !(url_stored?(zipcode)) && find_nearby_url(zipcode) != "" self.all_indexes << find_nearby_url(zipcode) i += 1 end end end |
#save_all_indexes ⇒ Object
14 15 16 17 |
# File 'lib/arbitrage/nearby-craigslists.rb', line 14 def save_all_indexes next_two_craigslists prev_two_craigslists end |
#save_original_url ⇒ Object
10 11 12 |
# File 'lib/arbitrage/nearby-craigslists.rb', line 10 def save_original_url self.all_indexes << self.scraper.url end |
#url_stored?(zipcode) ⇒ Boolean
44 45 46 47 48 |
# File 'lib/arbitrage/nearby-craigslists.rb', line 44 def url_stored?(zipcode) self.all_indexes.any? do |current_url| current_url == find_nearby_url(zipcode) end end |