module MediaWiktory::Wikipedia::Modules::Random
Get a set of random pages.
The “submodule” (MediaWiki API term) is included in action after setting some param, providing additional tweaking for this param. Example (for {MediaWiktory::Wikipedia::Actions::Query} and its submodules):
“`ruby api.query # returns Actions::Query
.prop(:revisions) # adds prop=revisions to action URL, and includes Modules::Revisions into action .limit(10) # method of Modules::Revisions, adds rvlimit=10 to URL
“`
All submodule's parameters are documented as its public methods, see below.
Public Instance Methods
@private
# File lib/mediawiktory/wikipedia/modules/random.rb, line 43 def _filterredir(value) defined?(super) && super || ["all", "redirects", "nonredirects"].include?(value.to_s) && merge(rnfilterredir: value.to_s) end
@private
# File lib/mediawiktory/wikipedia/modules/random.rb, line 30 def _namespace(value) defined?(super) && super || ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "100", "101", "108", "109", "118", "119", "446", "447", "710", "711", "828", "829", "2300", "2301", "2302", "2303"].include?(value.to_s) && merge(rnnamespace: value.to_s, replace: false) end
When more results are available, use this to continue.
@param value [String] @return [self]
# File lib/mediawiktory/wikipedia/modules/random.rb, line 66 def continue(value) merge(rncontinue: value.to_s) end
How to filter for redirects.
@param value [String] One of “all”, “redirects”, “nonredirects”. @return [self]
# File lib/mediawiktory/wikipedia/modules/random.rb, line 38 def filterredir(value) _filterredir(value) or fail ArgumentError, "Unknown value for filterredir: #{value}" end
Limit how many random pages will be returned.
@param value [Integer, “max”] @return [self]
# File lib/mediawiktory/wikipedia/modules/random.rb, line 58 def limit(value) merge(rnlimit: value.to_s) end
Return pages in these namespaces only.
@param values [Array<String>] Allowed values: “0”, “1”, “2”, “3”, “4”, “5”, “6”, “7”, “8”, “9”, “10”, “11”, “12”, “13”, “14”, “15”, “100”, “101”, “108”, “109”, “118”, “119”, “446”, “447”, “710”, “711”, “828”, “829”, “2300”, “2301”, “2302”, “2303”. @return [self]
# File lib/mediawiktory/wikipedia/modules/random.rb, line 25 def namespace(*values) values.inject(self) { |res, val| res._namespace(val) or fail ArgumentError, "Unknown value for namespace: #{val}" } end
Use rnfilterredir=redirects instead.
@return [self]
# File lib/mediawiktory/wikipedia/modules/random.rb, line 50 def redirect() merge(rnredirect: 'true') end