Sha256: d6e0185538240952aa17d4c1865c121269fdc57c270fa44438678b23a8f78242

Contents?: true

Size: 1.09 KB

Versions: 3

Compression:

Stored size: 1.09 KB

Contents

# Get and filter links
module AwesomeBot
  class << self
    def links_filter(list)
      list.reject { |x| x.length < 9 }
        .map do |x|
          x.gsub(',','%2c').gsub(/'.*/, '').gsub(/,.*/, '')
        end
        .map do |x|
          if x.include? ')]'
            x.gsub /\)\].*/, ''
          elsif (x.scan(')').count == 2) && (x.scan('(').count == 1)
            x.gsub(/\)\).*/, ')')
          elsif (x.scan(')').count > 0)
            if (x.include? 'wikipedia')
              if (x.scan(')').count == 1) && (x.scan('(').count == 0)
                x.gsub(/\).*/, '')
              else
                x
              end
            else
              x.gsub(/\).*/, '')
            end
          elsif x.include? '[' # adoc
            x.gsub(/\[.*/, '')
          elsif x[-1]=='.' || x[-1]==':'
            x[0..-2]
          elsif x[-1]=='.'
            x[0..-2]
          elsif x[-3..-1]=='%2c'
            x[0..-4]
          else
            x
          end
        end
    end

    def links_find(content)
      require 'uri'
      URI.extract(content, /http()s?/)
    end
  end # class
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
awesome_bot-1.15.0 lib/awesome_bot/links.rb
awesome_bot-1.14.0 lib/awesome_bot/links.rb
awesome_bot-1.13.10 lib/awesome_bot/links.rb