diff --git a/.gitignore b/.gitignore index abc802d..ec99688 100644 --- a/.gitignore +++ b/.gitignore @@ -10,3 +10,4 @@ vendor darkone/ *.cbz +/mythwalker/*.html diff --git a/covers/mythwalker-blank.jpg b/covers/mythwalker-blank.jpg new file mode 100644 index 0000000..eede9fd Binary files /dev/null and b/covers/mythwalker-blank.jpg differ diff --git a/covers/mythwalker.jpg b/covers/mythwalker.jpg new file mode 100644 index 0000000..a49a6a6 Binary files /dev/null and b/covers/mythwalker.jpg differ diff --git a/covers/mythwalker.pdf b/covers/mythwalker.pdf new file mode 100644 index 0000000..c0686e4 Binary files /dev/null and b/covers/mythwalker.pdf differ diff --git a/metadata/mythwalker.xml b/metadata/mythwalker.xml new file mode 100644 index 0000000..021de20 --- /dev/null +++ b/metadata/mythwalker.xml @@ -0,0 +1,4 @@ +Warbreaker Prime: Mythwalker +2019-11-22 +en-US +Brandon Sanderson diff --git a/mythwalker.rb b/mythwalker.rb new file mode 100644 index 0000000..0d25b09 --- /dev/null +++ b/mythwalker.rb @@ -0,0 +1,64 @@ +# frozen_string_literal: true + +require 'date' +require 'fileutils' +require 'nokogiri' +require_relative './methods' + +FileUtils.mkdir_p('mythwalker') + +BASE = 'https://brandonsanderson.com' + +links = [ + "/warbreaker-prime-mythwalker-prologue/", + "/warbreaker-prime-mythwalker-chapter-one/", + "/warbreaker-prime-mythwalker-chapter-two/", + "/warbreaker-prime-mythwalker-chapter-three/", + "/warbreaker-prime-mythwalker-chapter-four/", + "/warbreaker-prime-mythwalker-chapter-five/", + "/warbreaker-prime-mythwalker-chapter-six/", + "/warbreaker-prime-mythwalker-chapter-seven/", + "/warbreaker-prime-mythwalker-chapter-eight/", + "/warbreaker-prime-mythwalker-chapter-nine/", + "/warbreaker-prime-mythwalker-chapter-ten/", + "/warbreaker-prime-mythwalker-chapter-eleven/", + "/warbreaker-prime-mythwalker-chapter-twelve/", + "/warbreaker-prime-mythwalker-chapter-thirteen/", + "/warbreaker-prime-mythwalker-chapter-fourteen/", + "/warbreaker-prime-mythwalker-chapter-fifteen/", + "/warbreaker-prime-mythwalker-chapter-sixteen/", + "/warbreaker-prime-mythwalker-chapter-seventeen/", + "/warbreaker-prime-mythwalker-chapter-eighteen/", + "/warbreaker-prime-mythwalker-chapter-nineteen/", + "/warbreaker-prime-mythwalker-chapter-twenty/", + "/warbreaker-prime-mythwalker-chapter-twenty-one/", + "/warbreaker-prime-mythwalker-chapter-twenty-two/", + "/warbreaker-deleted-scenes-mab-the-cook/", +] + +titles = ["Prologue"] + (1..22).map{|x| "Chapter #{x}"} + ["Deleted Scenes: Mab the Cook"] + +episode=1 +links.each do |link| + url = BASE + link + puts "Download #{url}" + unless File.exist? "mythwalker/#{episode}.html" + `wget --no-clobber "#{url}" --output-document "mythwalker/#{episode}.html" -o /dev/null` + end + episode+=1 +end + +html = 'Warbreaker Prime: Mythwalker' + +(1..(links.length)).each do |i| + complete_html = Nokogiri::HTML(open("mythwalker/#{i}.html")) + page = complete_html.css('.vc_col-sm-7 .wpb_wrapper')[0] + html += "

#{titles[i - 1]}

" + page.inner_html +end + +html += '' + +File.open('books/mythwalker.html', 'w') { |file| file.write(html) } +puts '[html] Generated HTML file' + +generate('mythwalker', :all)