#!/usr/bin/ruby -w
require "mysql"
def grab(dbh, title)
dbh.query("select old_text from text where old_id=(select rev_text_id from revision where rev_id=(select page_latest from page where page_title='#{title}'));")
end
def all(dbh)
dbh.query("select page_title,old_text from page,revision,text where rev_id = page_latest and old_id = rev_text_id;")
end
begin
dbh = Mysql.real_connect("localhost", "wikiuser", ARG[0], "wikidb")
@title = "Main_Page"
rescue Mysql::Error => e
puts "Error code: #{e.errno}"
puts "Error message: #{e.error}"
puts "Error SQLSTATE: #{e.sqlstate}" if e.respond_to?("sqlstate")
ensure
# r = grab(dbh, @title)
r = all(dbh)
r.each do |row|
File.open("/data/shared/backup/wiki/#{row[0]}", "w") do |f|
f.write(row[1])
end
end
dbh.close if dbh
end
require 'optparse'
app = Hash.new
options = OptionParser.new do |opts|
opts.on("-o", "--option [ARG]", "Option description") do |opt|
app['option'] = opt
end
end
begin
options.parse!(ARGV)
rescue OptionParser::ParseError => e
puts e
end
def decode_base64( text )
text.unpack( "m" )[0]
end
def encode_base64( bin )
[ bin ].pack( "m" ).gsub( /\s/, "" )
end
text = "The quick brown fox jumps over the lazy dog"
p encode_base64( text )
# => VGhlIHF1aWNrIGJyb3duIGZveCBqdW1wcyBvdmVyIHRoZSBsYXp5IGRvZw==
p decode_base64( encode_base64( text ) )
# => The quick brown fox jumps over the lazy dog
#!/usr/local/bin/ruby
require 'rubygems'
require 'curl-multi'
curl = Curl::Multi.new
on_success = lambda do |body|
puts body
end
on_failure = lambda do |ex|
puts 'Failure.'
puts ex
end
curl.get('http://www.wp.pl', on_success, on_failure)
curl.select([],[]) while curl.size > 0;