Module: Janis
- Defined in:
- lib/janis.rb,
lib/janis/parsing.rb,
lib/janis/version.rb,
lib/janis/validations.rb,
lib/janis/parser_factory.rb,
lib/janis/proxy_website_parser.rb,
lib/janis/specific_parsers/simple.rb,
lib/janis/specific_parsers/hide_my_ass.rb,
lib/janis/specific_parsers/proxy-list_org.rb
Defined Under Namespace
Modules: Parsing
Constant Summary collapse
- IP_PORT_SEPARATOR =
':'
- PROXY_LIST_PATH =
File.dirname(__FILE__) + '/../proxy_server_list.yml'
- VERSION =
"0.1.2"
Class Method Summary collapse
Class Method Details
.find(amount, path_to_list = PROXY_LIST_PATH) ⇒ Object
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/janis.rb', line 10 def self.find(amount, path_to_list = PROXY_LIST_PATH) proxy_list = YAML.load_file("#{path_to_list}").split(' ') results = [] proxy_list.each do |url| if results.size < amount parsed_from_url = Parsing.parse(url) unless url.include?('#') # Elements should look like ["1.1.1.1:8080", "2.2.2.2:9090"] results_from_this_url = parsed_from_url.map { |entry| convert_to_hash(entry) } # Result should look like [ { ip: "1.1.1.1", port: "8080" }, { ip: "2.2.2.2", port: "9090" } ] results += results_from_this_url end end results[0..amount - 1] end |