diff --git a/app.yaml b/app.yaml index aad9c0e2..652ca05a 100644 --- a/app.yaml +++ b/app.yaml @@ -1,6 +1,6 @@ # ffd-retief-hrd fanfictiondownloader application: fanfictiondownloader -version: 4-3-0 +version: 4-3-1 runtime: python27 api_version: 1 threadsafe: true diff --git a/calibre-plugin/__init__.py b/calibre-plugin/__init__.py index 88a4963a..fc71dd53 100644 --- a/calibre-plugin/__init__.py +++ b/calibre-plugin/__init__.py @@ -27,7 +27,7 @@ class FanFictionDownLoaderBase(InterfaceActionBase): description = 'UI plugin to download FanFiction stories from various sites.' supported_platforms = ['windows', 'osx', 'linux'] author = 'Jim Miller' - version = (1, 3, 1) + version = (1, 3, 2) minimum_calibre_version = (0, 8, 30) #: This field defines the GUI plugin class that contains all the code diff --git a/fanficdownloader/adapters/adapter_archiveofourownorg.py b/fanficdownloader/adapters/adapter_archiveofourownorg.py index c882733e..0484211f 100644 --- a/fanficdownloader/adapters/adapter_archiveofourownorg.py +++ b/fanficdownloader/adapters/adapter_archiveofourownorg.py @@ -83,6 +83,10 @@ class ArchiveOfOurOwnOrgAdapter(BaseSiteAdapter): try: data = self._fetchUrl(url) meta = self._fetchUrl(meta) + + if "This work could have adult content. If you proceed you have agreed that you are willing to see such content." in meta: + raise exceptions.AdultCheckRequired(self.url) + except urllib2.HTTPError, e: if e.code == 404: raise exceptions.StoryDoesNotExist(self.meta) @@ -261,4 +265,4 @@ class ArchiveOfOurOwnOrgAdapter(BaseSiteAdapter): if None == soup: raise exceptions.FailedToDownload("Error downloading Chapter: %s! Missing required element!" % url) - return utf8FromSoup(chapter) \ No newline at end of file + return utf8FromSoup(chapter) diff --git a/fanficdownloader/adapters/adapter_fimfictionnet.py b/fanficdownloader/adapters/adapter_fimfictionnet.py index 5dd546a0..47faabcb 100644 --- a/fanficdownloader/adapters/adapter_fimfictionnet.py +++ b/fanficdownloader/adapters/adapter_fimfictionnet.py @@ -107,7 +107,7 @@ class FimFictionNetSiteAdapter(BaseSiteAdapter): for character in [character_icon['title'] for character_icon in soup.findAll("a", {"class":"character_icon"})]: self.story.addToList("characters", character) for category in [category.text for category in soup.find("div", {"class":"categories"}).findAll("a")]: - self.story.addToList("category", category) + self.story.addToList("genre", category) self.story.addToList("category", "My Little Pony") diff --git a/fanficdownloader/story.py b/fanficdownloader/story.py index 8a4ed78e..b936cb20 100644 --- a/fanficdownloader/story.py +++ b/fanficdownloader/story.py @@ -25,7 +25,7 @@ class Story: try: self.metadata = {'version':os.environ['CURRENT_VERSION_ID']} except: - self.metadata = {'version':'4.2'} + self.metadata = {'version':'4.3'} self.chapters = [] # chapters will be tuples of (title,html) self.listables = {} # some items (extratags, category, warnings & genres) are also kept as lists. diff --git a/index.html b/index.html index c69c212e..a498875f 100644 --- a/index.html +++ b/index.html @@ -54,15 +54,8 @@ much easier.
-- This version of the application uses Python 2.7 and - multithreading to try and reduce our usage. Google - considers Python 2.7 Experimental still, so there may be issues. -
-
- Support for 'Series'
-
We now collect 'Series' name and number for the sites:
harrypotterfanfiction.com,
potionsandsnitches.net,
@@ -75,15 +68,20 @@
twilighted.net*,
twilighted.net* and
thewriterscoffeeshop.com*.
-
+
* The last three use series as reading lists and stories collections as much as true story series, so they default to not collect series info. You can turn it on in your User Configuration if you want.
++ Thanks to Ida Leter for writing the code to support a new site: archiveofourown.org. +
If you have any problems with this application, please report them in the FanFictionDownLoader Google Group. The - Previous Version is also available for you to use if necessary. + Previous Version is also available for you to use if necessary.