158 lines
6.7 KiB
Ruby
158 lines
6.7 KiB
Ruby
require 'date'
|
|
require 'fileutils'
|
|
require 'nokogiri'
|
|
require_relative './methods'
|
|
|
|
FileUtils.mkdir_p("wor")
|
|
|
|
BASE = 'https://www.tor.com'
|
|
|
|
links = [
|
|
"/2014/06/12/introducing-the-words-of-radiance-reread/",
|
|
"/2014/06/12/words-of-radiance-reread-prologue/",
|
|
"/2014/06/19/words-of-radiance-reread-chapter-1/",
|
|
"/2014/06/26/words-of-radiance-reread-chapter-2/",
|
|
"/2014/07/03/words-of-radiance-reread-chapter-three/",
|
|
"/2014/07/10/words-of-radiance-reread-chapter-4/",
|
|
"/2014/07/17/words-of-radiance-reread-chapter-5/",
|
|
"/2014/07/24/words-of-radiance-reread-chapter-6/",
|
|
"/2014/07/31/words-of-radiance-reread-chapter-7/",
|
|
"/2014/08/07/words-of-radiance-reread-chapter-8/",
|
|
"/2014/08/14/words-of-radiance-reread-chapter-9/",
|
|
"/2014/08/21/words-of-radiance-reread-chapter-10/",
|
|
"/2014/08/28/words-of-radiance-reread-chapter-11/",
|
|
"/2014/09/04/words-of-radiance-reread-chapter-12/",
|
|
"/2014/09/11/words-of-radiance-reread-interlude-1/",
|
|
"/2014/09/18/words-of-radiance-reread-interlude-2/",
|
|
"/2014/09/25/words-of-radiance-reread-interlude-3/",
|
|
"/2014/10/02/words-of-radiance-reread-interlude-4/",
|
|
"/2014/10/09/words-of-radiance-reread-chapter-13/",
|
|
"/2014/10/16/words-of-radiance-reread-chapter-14/",
|
|
"/2014/10/23/words-of-radiance-reread-chapter-15/",
|
|
"/2014/10/30/words-of-radiance-reread-chapter-16/",
|
|
"/2014/11/06/words-of-radiance-reread-chapter-17/",
|
|
"/2014/11/13/words-of-radiance-reread-chapter-18/",
|
|
"/2014/11/20/words-of-radiance-reread-chapter-19/",
|
|
"/2014/12/04/words-of-radiance-reread-chapter-20/",
|
|
"/2014/12/11/words-of-radiance-reread-chapter-21/",
|
|
"/2014/12/18/words-of-radiance-reread-chapter-22/",
|
|
"/2015/01/08/words-of-radiance-reread-chapter-23/",
|
|
"/2015/01/15/words-of-radiance-reread-chapter-24/",
|
|
"/2015/01/22/words-of-radiance-reread-chapter-25/",
|
|
"/2015/01/29/words-of-radiance-reread-chapter-26/",
|
|
"/2015/02/05/words-of-radiance-reread-chapter-27/",
|
|
"/2015/02/12/words-of-radiance-reread-chapter-28/",
|
|
"/2015/02/19/words-of-radiance-reread-chapter-29/",
|
|
"/2015/02/26/words-of-radiance-reread-chapter-30/",
|
|
"/2015/03/05/words-of-radiance-reread-chapter-31/",
|
|
"/2015/03/12/words-of-radiance-reread-chapter-32/",
|
|
"/2015/03/19/words-of-radiance-reread-chapter-33/",
|
|
"/2015/03/26/words-of-radiance-reread-chapter-34/",
|
|
"/2015/04/02/words-of-radiance-reread-part-2-epigraphs/",
|
|
"/2015/04/09/words-of-radiance-reread-interludes-5-and-6/",
|
|
"/2015/04/16/words-of-radiance-reread-interludes-7-and-8/",
|
|
"/2015/04/23/words-of-radiance-reread-chapter-35/",
|
|
"/2015/04/30/words-of-radiance-reread-chapter-36/",
|
|
"/2015/05/07/words-of-radiance-reread-chapter-37/",
|
|
"/2015/05/14/words-of-radiance-reread-chapter-38/",
|
|
"/2015/05/21/words-of-radiance-reread-chapter-39/",
|
|
"/2015/05/28/words-of-radiance-reread-chapter-40/",
|
|
"/2015/06/04/words-of-radiance-reread-chapter-41/",
|
|
"/2015/06/11/words-of-radiance-reread-chapter-42/",
|
|
"/2015/06/18/words-of-radiance-reread-chapter-43/",
|
|
"/2015/06/25/words-of-radiance-reread-chapter-44/",
|
|
"/2015/07/02/words-of-radiance-reread-chapter-45/",
|
|
"/2015/07/09/words-of-radiance-reread-chapter-46/",
|
|
"/2015/07/23/words-of-radiance-reread-chapter-47/",
|
|
"/2015/07/30/words-of-radiance-reread-chapter-48/",
|
|
"/2015/08/06/words-of-radiance-reread-chapter-49/",
|
|
"/2015/08/13/words-of-radiance-reread-chapter-50/",
|
|
"/2015/08/20/words-of-radiance-reread-chapter-51/",
|
|
"/2015/08/27/words-of-radiance-reread-chapter-52/",
|
|
"/2015/09/03/words-of-radiance-reread-chapter-53/",
|
|
"/2015/09/10/words-of-radiance-reread-chapter-54/",
|
|
"/2015/09/17/words-of-radiance-reread-chapter-55/",
|
|
"/2015/09/24/words-of-radiance-reread-chapter-56/",
|
|
"/2015/10/01/words-of-radiance-reread-chapter-57/",
|
|
"/2015/10/08/words-of-radiance-reread-chapter-58/",
|
|
"/2015/10/15/words-of-radiance-reread-interlude-9/",
|
|
"/2015/10/22/words-of-radiance-reread-interlude-10/",
|
|
"/2015/10/29/words-of-radiance-reread-interlude-11/",
|
|
"/2015/11/05/words-of-radiance-reread-chapter-59/",
|
|
"/2015/11/12/words-of-radiance-reread-chapter-60/",
|
|
"/2015/11/19/words-of-radiance-reread-chapter-61/",
|
|
"/2015/12/03/words-of-radiance-reread-chapter-62/",
|
|
"/2015/12/10/words-of-radiance-reread-chapter-63/",
|
|
"/2015/12/17/words-of-radiance-reread-chapter-64/",
|
|
"/2016/01/07/words-of-radiance-reread-chapter-65/",
|
|
"/2016/01/14/words-of-radiance-reread-chapter-66/",
|
|
"/2016/01/21/words-of-radiance-reread-chapter-67/",
|
|
"/2016/01/28/words-of-radiance-reread-chapter-68/",
|
|
"/2016/02/04/words-of-radiance-reread-chapter-69/",
|
|
"/2016/02/11/words-of-radiance-reread-chapter-70/",
|
|
"/2016/02/18/words-of-radiance-reread-chapter-71/",
|
|
"/2016/02/25/words-of-radiance-reread-chapter-72/",
|
|
"/2016/03/03/words-of-radiance-reread-chapter-73/",
|
|
"/2016/03/10/words-of-radiance-reread-chapter-74/",
|
|
"/2016/03/17/words-of-radiance-reread-chapter-75/",
|
|
"/2016/03/24/words-of-radiance-reread-part-4-epigraphs/",
|
|
"/2016/03/31/words-of-radiance-reread-interludes-12-and-13/",
|
|
"/2016/04/07/words-of-radiance-reread-interlude-14/",
|
|
"/2016/04/14/words-of-radiance-reread-chapter-76/",
|
|
"/2016/04/21/words-of-radiance-reread-chapter-77/",
|
|
"/2016/04/28/words-of-radiance-reread-chapter-78/",
|
|
"/2016/05/05/words-of-radiance-reread-chapter-79/",
|
|
"/2016/05/12/words-of-radiance-reread-chapter-80/",
|
|
"/2016/05/19/words-of-radiance-reread-chapter-81/",
|
|
"/2016/05/26/words-of-radiance-reread-chapter-82/",
|
|
"/2016/06/02/words-of-radiance-reread-chapter-83/",
|
|
"/2016/06/09/words-of-radiance-reread-chapter-84/",
|
|
"/2016/06/16/words-of-radiance-reread-chapter-85/",
|
|
"/2016/06/23/words-of-radiance-reread-chapter-86/",
|
|
"/2016/06/30/words-of-radiance-reread-chapter-87/",
|
|
"/2016/07/14/words-of-radiance-reread-chapter-88/",
|
|
"/2016/07/28/words-of-radiance-reread-chapter-89/",
|
|
"/2016/08/04/words-of-radiance-reread-epilogue-and-what-comes-next/"
|
|
]
|
|
|
|
episode = 1
|
|
|
|
for link in links
|
|
url = BASE + link
|
|
puts "Download #{url}"
|
|
if !File.exists? "wor/#{episode}.html"
|
|
`wget --no-clobber "#{url}" --output-document "wor/#{episode}.html" -o /dev/null`
|
|
end
|
|
episode +=1
|
|
end
|
|
|
|
# Now we have all the files
|
|
html = ""
|
|
for i in 1..(links.length)
|
|
complete_html = Nokogiri::HTML(open("wor/#{i}.html"))
|
|
page = complete_html.css('.entry-content')
|
|
title = complete_html.css('.entry-title>a').inner_html
|
|
ending = false
|
|
page.children.each do |e|
|
|
|
|
if e.attribute('class') and (e['class'].include? 'squib' or e['class'].include? 'post-end-spacer')
|
|
ending = true
|
|
end
|
|
|
|
if ending
|
|
e.remove
|
|
end
|
|
end
|
|
html += "<h1>#{title}</h1>"
|
|
html += page.inner_html
|
|
|
|
url = links[i-1]
|
|
|
|
html += "<p>Visit <a href='#{url}'>tor.com</a> for discussion.</p>"
|
|
end
|
|
|
|
File.open("books/wor-reread.html", 'w') { |file| file.write(html) }
|
|
puts "[html] Generated HTML file"
|
|
|
|
generate("wor-reread", :all)
|