diff options
author | Paul Duncan <pabs@pablotron.org> | 2019-01-20 16:10:32 -0500 |
---|---|---|
committer | Paul Duncan <pabs@pablotron.org> | 2019-01-20 16:10:32 -0500 |
commit | ac77abdfcc14950843035667a1ec2d15eadc4a69 (patch) | |
tree | d577d81bf3270700160ce54ba2edcf3da8095d90 /levels/borgar.net/get-levels.rb | |
parent | 4b5af8da20f2e35e6cd81a4e7418767e6964e8bc (diff) | |
download | sok-ac77abdfcc14950843035667a1ec2d15eadc4a69.tar.bz2 sok-ac77abdfcc14950843035667a1ec2d15eadc4a69.zip |
add levels
Diffstat (limited to 'levels/borgar.net/get-levels.rb')
-rw-r--r-- | levels/borgar.net/get-levels.rb | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/levels/borgar.net/get-levels.rb b/levels/borgar.net/get-levels.rb new file mode 100644 index 0000000..b059cf6 --- /dev/null +++ b/levels/borgar.net/get-levels.rb @@ -0,0 +1,17 @@ +#!/usr/bin/env ruby + +require 'open-uri' + +HOME_URL = 'http://borgar.net/programs/sokoban/' +BASE_URL = 'http://borgar.net/programs/sokoban/levels' + +# read HTML, extract level sets +open(HOME_URL).read.scan(/<option value="([^"]+)"/).flatten.each do |name| + # build source url and destination file name + src_url = '%s/%s.txt' % [BASE_URL, name.gsub(/ /, '%20')] + dst_path = '%s.txt' % [name] + + # read url, write to path + puts dst_path + File.write(dst_path, open(src_url).read) +end |