randomua 1.0.0 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/.gitignore +1 -0
- data/README.md +22 -1
- data/Rakefile +1 -6
- data/bin/console +4 -4
- data/bin/randomua +57 -1
- data/lib/randomua.rb +1 -49
- data/randomua.gemspec +12 -15
- metadata +16 -44
- data/.rspec +0 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: c151f971742c66626e660a42be775e6de30542a56006ceaf50b134ba01aa526e
|
4
|
+
data.tar.gz: 0b3b46d894b7acd25e1bdea3684e3fae85643d4b462399062a180dc2c662346c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: af06adb35beeb1d5f9b06776f8e05761e77ce8b5e709ddb636fd6d925aa90e3e96561d44bc76c1261d4cc9b131a32509c53b922210b6c316d4ec0551562686bc
|
7
|
+
data.tar.gz: 65933136d8ba38e889c803d63d9e2f8b453f7c7f5742efce9a355091e2ba8f4e4b73fdbcc6c0e6d8e1899c259a2f64ac2ae32815d2ef36f7a23e0dd0e279b76f
|
data/.gitignore
CHANGED
data/README.md
CHANGED
@@ -1,5 +1,8 @@
|
|
1
1
|
# Randomua
|
2
2
|
|
3
|
+
[](https://rubygems.org/gems/randomua)
|
4
|
+
[](https://github.com/picatz/randomua/blob/master/LICENSE.txt)
|
5
|
+
|
3
6
|

|
4
7
|
|
5
8
|
A command-line application to generate random user agent strings. Acting as a command-line interface to the [user-agent-randomizer](https://github.com/asconix/user-agent-randomizer) gem without the need to do any ruby programming.
|
@@ -10,7 +13,25 @@ A command-line application to generate random user agent strings. Acting as a co
|
|
10
13
|
|
11
14
|
## Usage
|
12
15
|
|
13
|
-
|
16
|
+
```
|
17
|
+
$ randomua -h
|
18
|
+
random user agent | Generate a random user agent string.
|
19
|
+
-c, --crawler Gereate a random crawler user agent string
|
20
|
+
-d, --desktop-browser Gereate a random desktop browser user agent string
|
21
|
+
-m, --mobile-browser Gereate a random mobile browser user agent string
|
22
|
+
-o, --console Gereate a random console user agent string
|
23
|
+
-f, --offline-browser Gereate a random offline browser user agent string
|
24
|
+
-e, --email-client Gereate a random email client user agent string
|
25
|
+
-l, --link-checker Gereate a random link checker user agent string
|
26
|
+
-a, --email-collector Gereate a random email collector user agent string
|
27
|
+
-v, --validator Gereate a random validator user agent string
|
28
|
+
-r, --feed-reader Gereate a random feed reader user agent string
|
29
|
+
-i, --library Gereate a random library user agent string
|
30
|
+
-u, --cloud-platform Gereate a random cloud platform user agent string
|
31
|
+
-t, --other Gereate a random other user agent string
|
32
|
+
-s, --version Print version and exit
|
33
|
+
-h, --help Show this message
|
34
|
+
```
|
14
35
|
|
15
36
|
## License
|
16
37
|
|
data/Rakefile
CHANGED
data/bin/console
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
2
|
|
3
|
-
require
|
4
|
-
require
|
3
|
+
require 'bundler/setup'
|
4
|
+
require 'randomua'
|
5
5
|
|
6
6
|
# You can add fixtures and/or initialization code here to make experimenting
|
7
7
|
# with your gem easier. You can also use a different console, if you like.
|
8
8
|
|
9
9
|
# (If you use this, don't forget to add pry to your Gemfile!)
|
10
|
-
# require
|
10
|
+
# require 'pry'
|
11
11
|
# Pry.start
|
12
12
|
|
13
|
-
require
|
13
|
+
require 'irb'
|
14
14
|
IRB.start
|
data/bin/randomua
CHANGED
@@ -1,4 +1,60 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
|
+
|
2
3
|
require 'randomua'
|
4
|
+
require 'docopt'
|
5
|
+
|
6
|
+
doc = <<~DOCOPT
|
7
|
+
randomua (random user agent) | Generate a random user agent string.
|
8
|
+
|
9
|
+
Usage:
|
10
|
+
randomua [options]
|
11
|
+
randomua -h | --help
|
12
|
+
randomua --version
|
13
|
+
|
14
|
+
Options:
|
15
|
+
-c, --crawler Gereate a random crawler user agent string
|
16
|
+
-d, --desktop-browser Gereate a random desktop browser user agent string
|
17
|
+
-m, --mobile-browser Gereate a random mobile browser user agent string
|
18
|
+
-o, --console Gereate a random console user agent string
|
19
|
+
-f, --offline-browser Gereate a random offline browser user agent string
|
20
|
+
-e, --email-client Gereate a random email client user agent string
|
21
|
+
-l, --link-checker Gereate a random link checker user agent string
|
22
|
+
-a, --email-collector Gereate a random email collector user agent string
|
23
|
+
-v, --validator Gereate a random validator user agent string
|
24
|
+
-r, --feed-reader Gereate a random feed reader user agent string
|
25
|
+
-i, --library Gereate a random library user agent string
|
26
|
+
-u, --cloud-platform Gereate a random cloud platform user agent string
|
27
|
+
-t, --other Gereate a random other user agent string
|
28
|
+
-s, --version Print version and exit
|
29
|
+
-h, --help Show this message
|
30
|
+
|
31
|
+
Examples:
|
32
|
+
randomua -d
|
33
|
+
DOCOPT
|
3
34
|
|
4
|
-
|
35
|
+
begin
|
36
|
+
args = Docopt.docopt(doc, version: Randomua::VERSION)
|
37
|
+
# use case 1, using the tool
|
38
|
+
if args.empty?
|
39
|
+
puts UserAgentRandomizer::UserAgent.fetch.string
|
40
|
+
else
|
41
|
+
type = 'crawler' if args['--crawler']
|
42
|
+
type = 'desktop_browser' if args['--desktop-browser']
|
43
|
+
type = 'mobile_browser' if args['--mobile-browser']
|
44
|
+
type = 'console' if args['--console']
|
45
|
+
type = 'offline_browser' if args['--offline-browser']
|
46
|
+
type = 'email_client' if args['--email-client']
|
47
|
+
type = 'link_checker' if args['--link-checker']
|
48
|
+
type = 'email_collector' if args['--email-collector']
|
49
|
+
type = 'validator' if args['--validator']
|
50
|
+
type = 'feed_reader' if args['--feed-reader']
|
51
|
+
type = 'library' if args['--library']
|
52
|
+
type = 'cloud_platform' if args['--cloud-platform']
|
53
|
+
type = 'other' if args['--other']
|
54
|
+
puts UserAgentRandomizer::UserAgent.fetch(type: type).string
|
55
|
+
end
|
56
|
+
# use case 2, help: already handled by docopt
|
57
|
+
# use case 3, version: already handled by docopt
|
58
|
+
rescue Docopt::Exit => e
|
59
|
+
puts e.message
|
60
|
+
end
|
data/lib/randomua.rb
CHANGED
@@ -1,53 +1,5 @@
|
|
1
|
-
require 'trollop'
|
2
|
-
require 'colorize'
|
3
1
|
require 'user_agent_randomizer'
|
4
2
|
|
5
3
|
module Randomua
|
6
|
-
|
7
|
-
VERSION = "1.0.0"
|
8
|
-
|
9
|
-
def self.run_application!
|
10
|
-
# Default to a help menu
|
11
|
-
foo = ARGV[0] || ARGV[0] = '-h'
|
12
|
-
|
13
|
-
opts = Trollop::options do
|
14
|
-
banner "random user agent".blue.red + " | " + "Generate a random user agent string.".bold
|
15
|
-
version "#{Randomua::VERSION}"
|
16
|
-
opt :crawler, "Gereate a random crawler user agent string"
|
17
|
-
opt :desktop_browser, "Gereate a random desktop browser user agent string"
|
18
|
-
opt :mobile_browser, "Gereate a random mobile browser user agent string"
|
19
|
-
opt :console, "Gereate a random console user agent string"
|
20
|
-
opt :offline_browser, "Gereate a random offline browser user agent string"
|
21
|
-
opt :email_client, "Gereate a random email client user agent string"
|
22
|
-
opt :link_checker, "Gereate a random link checker user agent string"
|
23
|
-
opt :email_collector, "Gereate a random email collector user agent string"
|
24
|
-
opt :validator, "Gereate a random validator user agent string"
|
25
|
-
opt :feed_reader, "Gereate a random feed reader user agent string"
|
26
|
-
opt :library, "Gereate a random library user agent string"
|
27
|
-
opt :cloud_platform, "Gereate a random cloud platform user agent string"
|
28
|
-
opt :other, "Gereate a random other user agent string"
|
29
|
-
end
|
30
|
-
|
31
|
-
# check for a filter
|
32
|
-
filter = Hash[opts.keys.keep_if { |k| k.to_s =~ /_given\b/ } .collect { |i| [i, true] } ]
|
33
|
-
|
34
|
-
unless filter.empty?
|
35
|
-
return puts UserAgentRandomizer::UserAgent.fetch(type: "crawler").string if opts.crawler
|
36
|
-
return puts UserAgentRandomizer::UserAgent.fetch(type: "desktop_browser").string if opts.desktop_browser
|
37
|
-
return puts UserAgentRandomizer::UserAgent.fetch(type: "mobile_browser").string if opts.mobile_browser
|
38
|
-
return puts UserAgentRandomizer::UserAgent.fetch(type: "console").string if opts.console
|
39
|
-
return puts UserAgentRandomizer::UserAgent.fetch(type: "offline_browser").string if opts.offline_browser
|
40
|
-
return puts UserAgentRandomizer::UserAgent.fetch(type: "email_client").string if opts.email_client
|
41
|
-
return puts UserAgentRandomizer::UserAgent.fetch(type: "link_checker").string if opts.link_checker
|
42
|
-
return puts UserAgentRandomizer::UserAgent.fetch(type: "email_collector").string if opts.email_collector
|
43
|
-
return puts UserAgentRandomizer::UserAgent.fetch(type: "validator").string if opts.validator
|
44
|
-
return puts UserAgentRandomizer::UserAgent.fetch(type: "feed_reader").string if opts.feed_reader
|
45
|
-
return puts UserAgentRandomizer::UserAgent.fetch(type: "library").string if opts.library
|
46
|
-
return puts UserAgentRandomizer::UserAgent.fetch(type: "cloud_platform").string if opts.cloud_platform
|
47
|
-
return puts UserAgentRandomizer::UserAgent.fetch(type: "other").string if opts.other
|
48
|
-
else
|
49
|
-
puts UserAgentRandomizer::UserAgent.fetch.string
|
50
|
-
end
|
51
|
-
end
|
52
|
-
|
4
|
+
VERSION = '1.1.0'
|
53
5
|
end
|
data/randomua.gemspec
CHANGED
@@ -1,29 +1,26 @@
|
|
1
|
-
# coding: utf-8
|
2
1
|
lib = File.expand_path('../lib', __FILE__)
|
3
2
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
3
|
require 'randomua'
|
5
4
|
|
6
5
|
Gem::Specification.new do |spec|
|
7
|
-
spec.name =
|
6
|
+
spec.name = 'randomua'
|
8
7
|
spec.version = Randomua::VERSION
|
9
|
-
spec.authors = [
|
10
|
-
spec.email = [
|
8
|
+
spec.authors = ['Kent Gruber', 'Alexandre ZANNI']
|
9
|
+
spec.email = ['kgruber1@emich.edu', 'alexandre.zanni@europe.com']
|
11
10
|
|
12
11
|
spec.summary = %q{A command-line application to generate random user agent strings.}
|
13
12
|
spec.description = %q{A command-line application to generate random user agent strings. Acting as a command-line interface to the user-agent-randomizer gem without the need to do any ruby programming.}
|
14
|
-
spec.homepage =
|
15
|
-
spec.license =
|
13
|
+
spec.homepage = 'https://github.com/picatz/randomua'
|
14
|
+
spec.license = 'MIT'
|
16
15
|
|
17
16
|
spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
18
|
-
spec.bindir =
|
19
|
-
spec.executable =
|
20
|
-
spec.require_paths = [
|
17
|
+
spec.bindir = 'bin'
|
18
|
+
spec.executable = 'randomua'
|
19
|
+
spec.require_paths = ['lib']
|
21
20
|
|
22
|
-
spec.add_dependency
|
23
|
-
spec.add_dependency
|
24
|
-
spec.add_dependency "user-agent-randomizer"
|
21
|
+
spec.add_dependency 'docopt', '~> 0.6'
|
22
|
+
spec.add_dependency 'user-agent-randomizer', '~> 0.2'
|
25
23
|
|
26
|
-
spec.add_development_dependency
|
27
|
-
spec.add_development_dependency
|
28
|
-
spec.add_development_dependency "rspec", "~> 3.0"
|
24
|
+
spec.add_development_dependency 'bundler', '~> 2.1'
|
25
|
+
spec.add_development_dependency 'rake', '~> 10.0'
|
29
26
|
end
|
metadata
CHANGED
@@ -1,71 +1,58 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: randomua
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Kent Gruber
|
8
|
+
- Alexandre ZANNI
|
8
9
|
autorequire:
|
9
10
|
bindir: bin
|
10
11
|
cert_chain: []
|
11
|
-
date:
|
12
|
+
date: 2020-03-20 00:00:00.000000000 Z
|
12
13
|
dependencies:
|
13
14
|
- !ruby/object:Gem::Dependency
|
14
|
-
name:
|
15
|
+
name: docopt
|
15
16
|
requirement: !ruby/object:Gem::Requirement
|
16
17
|
requirements:
|
17
|
-
- - "
|
18
|
-
- !ruby/object:Gem::Version
|
19
|
-
version: '0'
|
20
|
-
type: :runtime
|
21
|
-
prerelease: false
|
22
|
-
version_requirements: !ruby/object:Gem::Requirement
|
23
|
-
requirements:
|
24
|
-
- - ">="
|
25
|
-
- !ruby/object:Gem::Version
|
26
|
-
version: '0'
|
27
|
-
- !ruby/object:Gem::Dependency
|
28
|
-
name: colorize
|
29
|
-
requirement: !ruby/object:Gem::Requirement
|
30
|
-
requirements:
|
31
|
-
- - ">="
|
18
|
+
- - "~>"
|
32
19
|
- !ruby/object:Gem::Version
|
33
|
-
version: '0'
|
20
|
+
version: '0.6'
|
34
21
|
type: :runtime
|
35
22
|
prerelease: false
|
36
23
|
version_requirements: !ruby/object:Gem::Requirement
|
37
24
|
requirements:
|
38
|
-
- - "
|
25
|
+
- - "~>"
|
39
26
|
- !ruby/object:Gem::Version
|
40
|
-
version: '0'
|
27
|
+
version: '0.6'
|
41
28
|
- !ruby/object:Gem::Dependency
|
42
29
|
name: user-agent-randomizer
|
43
30
|
requirement: !ruby/object:Gem::Requirement
|
44
31
|
requirements:
|
45
|
-
- - "
|
32
|
+
- - "~>"
|
46
33
|
- !ruby/object:Gem::Version
|
47
|
-
version: '0'
|
34
|
+
version: '0.2'
|
48
35
|
type: :runtime
|
49
36
|
prerelease: false
|
50
37
|
version_requirements: !ruby/object:Gem::Requirement
|
51
38
|
requirements:
|
52
|
-
- - "
|
39
|
+
- - "~>"
|
53
40
|
- !ruby/object:Gem::Version
|
54
|
-
version: '0'
|
41
|
+
version: '0.2'
|
55
42
|
- !ruby/object:Gem::Dependency
|
56
43
|
name: bundler
|
57
44
|
requirement: !ruby/object:Gem::Requirement
|
58
45
|
requirements:
|
59
46
|
- - "~>"
|
60
47
|
- !ruby/object:Gem::Version
|
61
|
-
version: '1
|
48
|
+
version: '2.1'
|
62
49
|
type: :development
|
63
50
|
prerelease: false
|
64
51
|
version_requirements: !ruby/object:Gem::Requirement
|
65
52
|
requirements:
|
66
53
|
- - "~>"
|
67
54
|
- !ruby/object:Gem::Version
|
68
|
-
version: '1
|
55
|
+
version: '2.1'
|
69
56
|
- !ruby/object:Gem::Dependency
|
70
57
|
name: rake
|
71
58
|
requirement: !ruby/object:Gem::Requirement
|
@@ -80,32 +67,18 @@ dependencies:
|
|
80
67
|
- - "~>"
|
81
68
|
- !ruby/object:Gem::Version
|
82
69
|
version: '10.0'
|
83
|
-
- !ruby/object:Gem::Dependency
|
84
|
-
name: rspec
|
85
|
-
requirement: !ruby/object:Gem::Requirement
|
86
|
-
requirements:
|
87
|
-
- - "~>"
|
88
|
-
- !ruby/object:Gem::Version
|
89
|
-
version: '3.0'
|
90
|
-
type: :development
|
91
|
-
prerelease: false
|
92
|
-
version_requirements: !ruby/object:Gem::Requirement
|
93
|
-
requirements:
|
94
|
-
- - "~>"
|
95
|
-
- !ruby/object:Gem::Version
|
96
|
-
version: '3.0'
|
97
70
|
description: A command-line application to generate random user agent strings. Acting
|
98
71
|
as a command-line interface to the user-agent-randomizer gem without the need to
|
99
72
|
do any ruby programming.
|
100
73
|
email:
|
101
74
|
- kgruber1@emich.edu
|
75
|
+
- alexandre.zanni@europe.com
|
102
76
|
executables:
|
103
77
|
- randomua
|
104
78
|
extensions: []
|
105
79
|
extra_rdoc_files: []
|
106
80
|
files:
|
107
81
|
- ".gitignore"
|
108
|
-
- ".rspec"
|
109
82
|
- ".travis.yml"
|
110
83
|
- CODE_OF_CONDUCT.md
|
111
84
|
- Gemfile
|
@@ -136,8 +109,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
136
109
|
- !ruby/object:Gem::Version
|
137
110
|
version: '0'
|
138
111
|
requirements: []
|
139
|
-
|
140
|
-
rubygems_version: 2.5.2
|
112
|
+
rubygems_version: 3.0.6
|
141
113
|
signing_key:
|
142
114
|
specification_version: 4
|
143
115
|
summary: A command-line application to generate random user agent strings.
|
data/.rspec
DELETED