Needed: Software that can take a story posted in multiple chapters to fanfiction.net and then make it into a single text/book.

Cost: free

Desired technology: irrelevant (webapp, Windows, Linux, Perl/Python/Java code, etc... are all acceptable, although Windows or webapp is a weak preference)

Output: doesn't matter. TXT file or HTML file or epub or whatever else readable by standard text or ebook reader. (Source material is un-formatted text).

  • Sorry, correct tag should be related to website scraping. If someone edits that in, thanks – fanficreader Aug 19 '15 at 20:59

Simplest answer: Pandoc

pandoc -s -r html chapter_url chapter_url chapter_url -o outputfilename.epub

where each chapter_url is a link to a webpage containing a chapter will take the whole of the webpages that you reference with the chapter_url as a chapter in the ebook.

  • Price: Free
  • Output formats: Lots
  • Platform: Windows/OS-X/Linux
  • Add ToC Option: -toc will add one
  • Works "Straight out of the box"
  • Work for you to do: Learn the options and specify the web pages

The only possible downside is that you may wish to get rid of the header and footer information which in this case would be a manual operation, you could however use pandoc to fetch the pages into markdown, edit that, then use pandoc to convert to the final format.

Of course you should check the author(s) of the web pages permissions/licence terms before using this to make sure that it is an allowed usage

  • For the amount of diy required for this, the downsides of getting whole pages anyway and needing to construct your own URL make this a solution which is far inferior to pure programming Python one (where one can, at least, avoid having to compile 40-long list of chapter URLs and be able to scrape off page scaffolding). At least from my needs - ymmv – fanficreader Aug 20 '15 at 18:22

Slightly more work answer: Python + Scrapy

With python & scrapy you can fetch the web pages that you need, separate out the content from the other information, possibly also fetch other information linked from within the story, and collate it as you wish, there are lots of examples on the website & on stackoverflow.

Python can even create the ebook for you directly - either using just the standard libraries, (again there are examples on the web of how to do this), or with the ebooklib.

  • Price: Free
  • Output formats: Any you care to implement
  • Platform: Windows/OS-X/Linux/RaspberryPi/lots of others
  • Add ToC Option: Yes
  • Work for you to do: Learn some python & scrapy, identify the web page sections that you need, write & test the scripts.

This approach is more work than my other answer and does not do the job out of the box but will eventually produce a better looking final result and you will learn a lot of transferable skills.

Of course you should check the author(s) of the web pages permissions/licence terms before using this to make sure that it is an allowed usage

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.