py2/py3 transition code

This commit is contained in:
Jim Miller 2018-07-31 17:54:54 -05:00
parent 5aaf15c8b4
commit b8aa3e9a48
153 changed files with 904 additions and 698 deletions

View file

@ -19,6 +19,9 @@ from __future__ import absolute_import
import os, re, sys, glob, types import os, re, sys, glob, types
from os.path import dirname, basename, normpath from os.path import dirname, basename, normpath
import logging import logging
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.parse import urlparse from ..six.moves.urllib.parse import urlparse
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
@ -31,154 +34,154 @@ from .. import configurable as configurable
from . import base_efiction_adapter from . import base_efiction_adapter
from . import adapter_test1 from . import adapter_test1
from . import adapter_fanfictionnet from . import adapter_fanfictionnet
# from . import adapter_fanficcastletvnet from . import adapter_fanficcastletvnet
# from . import adapter_fictionalleyorg from . import adapter_fictionalleyorg
# from . import adapter_fictionpresscom from . import adapter_fictionpresscom
# from . import adapter_ficwadcom from . import adapter_ficwadcom
# from . import adapter_fimfictionnet from . import adapter_fimfictionnet
# from . import adapter_mediaminerorg from . import adapter_mediaminerorg
# from . import adapter_potionsandsnitches from . import adapter_potionsandsnitches
# from . import adapter_tenhawkpresentscom from . import adapter_tenhawkpresentscom
# from . import adapter_adastrafanficcom from . import adapter_adastrafanficcom
# from . import adapter_tthfanficorg from . import adapter_tthfanficorg
# from . import adapter_twilightednet from . import adapter_twilightednet
# from . import adapter_whoficcom from . import adapter_whoficcom
# from . import adapter_siyecouk from . import adapter_siyecouk
# from . import adapter_archiveofourownorg from . import adapter_archiveofourownorg
# from . import adapter_ficbooknet from . import adapter_ficbooknet
# from . import adapter_nfacommunitycom from . import adapter_nfacommunitycom
# from . import adapter_midnightwhispers from . import adapter_midnightwhispers
# from . import adapter_ksarchivecom from . import adapter_ksarchivecom
# from . import adapter_archiveskyehawkecom from . import adapter_archiveskyehawkecom
# from . import adapter_squidgeorgpeja from . import adapter_squidgeorgpeja
# from . import adapter_libraryofmoriacom from . import adapter_libraryofmoriacom
# from . import adapter_wraithbaitcom from . import adapter_wraithbaitcom
# from . import adapter_dramioneorg from . import adapter_dramioneorg
# from . import adapter_ashwindersycophanthexcom from . import adapter_ashwindersycophanthexcom
# from . import adapter_chaossycophanthexcom from . import adapter_chaossycophanthexcom
# from . import adapter_erosnsapphosycophanthexcom from . import adapter_erosnsapphosycophanthexcom
# from . import adapter_lumossycophanthexcom from . import adapter_lumossycophanthexcom
# from . import adapter_occlumencysycophanthexcom from . import adapter_occlumencysycophanthexcom
# from . import adapter_phoenixsongnet from . import adapter_phoenixsongnet
# from . import adapter_walkingtheplankorg from . import adapter_walkingtheplankorg
# from . import adapter_dokugacom from . import adapter_dokugacom
# from . import adapter_iketernalnet from . import adapter_iketernalnet
# from . import adapter_storiesofardacom from . import adapter_storiesofardacom
# from . import adapter_destinysgatewaycom from . import adapter_destinysgatewaycom
# from . import adapter_ncisfictioncom from . import adapter_ncisfictioncom
# from . import adapter_fanfiktionde from . import adapter_fanfiktionde
# from . import adapter_ponyfictionarchivenet from . import adapter_ponyfictionarchivenet
# from . import adapter_ncisficcom from . import adapter_ncisficcom
# from . import adapter_nationallibrarynet from . import adapter_nationallibrarynet
# from . import adapter_themasquenet from . import adapter_themasquenet
# from . import adapter_pretendercentrecom from . import adapter_pretendercentrecom
# from . import adapter_darksolaceorg from . import adapter_darksolaceorg
# from . import adapter_finestoriescom from . import adapter_finestoriescom
# from . import adapter_hpfanficarchivecom from . import adapter_hpfanficarchivecom
# from . import adapter_twilightarchivescom from . import adapter_twilightarchivescom
# from . import adapter_nhamagicalworldsus from . import adapter_nhamagicalworldsus
# from . import adapter_hlfictionnet from . import adapter_hlfictionnet
# from . import adapter_dracoandginnycom from . import adapter_dracoandginnycom
# from . import adapter_scarvesandcoffeenet from . import adapter_scarvesandcoffeenet
# from . import adapter_thepetulantpoetesscom from . import adapter_thepetulantpoetesscom
# from . import adapter_wolverineandroguecom from . import adapter_wolverineandroguecom
# from . import adapter_merlinficdtwinscouk from . import adapter_merlinficdtwinscouk
# from . import adapter_thehookupzonenet from . import adapter_thehookupzonenet
# from . import adapter_bloodtiesfancom from . import adapter_bloodtiesfancom
# from . import adapter_qafficcom from . import adapter_qafficcom
# from . import adapter_efpfanficnet from . import adapter_efpfanficnet
# from . import adapter_potterficscom from . import adapter_potterficscom
# from . import adapter_efictionestelielde from . import adapter_efictionestelielde
# from . import adapter_imagineeficcom from . import adapter_imagineeficcom
# from . import adapter_asr3slashzoneorg from . import adapter_asr3slashzoneorg
# from . import adapter_potterheadsanonymouscom from . import adapter_potterheadsanonymouscom
# from . import adapter_fictionpadcom from . import adapter_fictionpadcom
# from . import adapter_storiesonlinenet from . import adapter_storiesonlinenet
# from . import adapter_trekiverseorg from . import adapter_trekiverseorg
# from . import adapter_literotica from . import adapter_literotica
# from . import adapter_voracity2eficcom from . import adapter_voracity2eficcom
# from . import adapter_spikeluvercom from . import adapter_spikeluvercom
# from . import adapter_bloodshedversecom from . import adapter_bloodshedversecom
# from . import adapter_nocturnallightnet from . import adapter_nocturnallightnet
# from . import adapter_fanfichu from . import adapter_fanfichu
# from . import adapter_fictionmaniatv from . import adapter_fictionmaniatv
# from . import adapter_tolkienfanfiction from . import adapter_tolkienfanfiction
# from . import adapter_themaplebookshelf from . import adapter_themaplebookshelf
# from . import adapter_fannation from . import adapter_fannation
# from . import adapter_sheppardweircom from . import adapter_sheppardweircom
# from . import adapter_samandjacknet from . import adapter_samandjacknet
# from . import adapter_csiforensicscom from . import adapter_csiforensicscom
# from . import adapter_lotrfanfictioncom from . import adapter_lotrfanfictioncom
# from . import adapter_fhsarchivecom from . import adapter_fhsarchivecom
# from . import adapter_fanfictionjunkiesde from . import adapter_fanfictionjunkiesde
# from . import adapter_tgstorytimecom from . import adapter_tgstorytimecom
# from . import adapter_itcouldhappennet from . import adapter_itcouldhappennet
from . import adapter_forumsspacebattlescom from . import adapter_forumsspacebattlescom
# from . import adapter_forumssufficientvelocitycom from . import adapter_forumssufficientvelocitycom
# from . import adapter_forumquestionablequestingcom from . import adapter_forumquestionablequestingcom
# from . import adapter_ninelivesarchivecom from . import adapter_ninelivesarchivecom
# from . import adapter_masseffect2in from . import adapter_masseffect2in
# from . import adapter_quotevcom from . import adapter_quotevcom
# from . import adapter_mcstoriescom from . import adapter_mcstoriescom
# from . import adapter_buffygilescom from . import adapter_buffygilescom
# from . import adapter_andromedawebcom from . import adapter_andromedawebcom
# from . import adapter_artemisfowlcom from . import adapter_artemisfowlcom
# from . import adapter_naiceanilmenet from . import adapter_naiceanilmenet
# from . import adapter_deepinmysoulnet from . import adapter_deepinmysoulnet
# from . import adapter_kiarepositorymujajinet from . import adapter_kiarepositorymujajinet
# from . import adapter_adultfanfictionorg from . import adapter_adultfanfictionorg
# from . import adapter_fictionhuntcom from . import adapter_fictionhuntcom
# from . import adapter_royalroadl from . import adapter_royalroadl
# from . import adapter_chosentwofanficcom from . import adapter_chosentwofanficcom
# from . import adapter_bdsmlibrarycom from . import adapter_bdsmlibrarycom
# from . import adapter_asexstoriescom from . import adapter_asexstoriescom
# from . import adapter_gluttonyfictioncom from . import adapter_gluttonyfictioncom
# from . import adapter_valentchambercom from . import adapter_valentchambercom
# from . import adapter_looselugscom from . import adapter_looselugscom
# from . import adapter_wwwgiantessworldnet from . import adapter_wwwgiantessworldnet
# from . import adapter_lotrgficcom from . import adapter_lotrgficcom
# from . import adapter_tomparisdormcom from . import adapter_tomparisdormcom
# from . import adapter_writingwhimsicalwanderingsnet from . import adapter_writingwhimsicalwanderingsnet
# from . import adapter_sugarquillnet from . import adapter_sugarquillnet
# from . import adapter_wwwarea52hkhnet from . import adapter_wwwarea52hkhnet
# from . import adapter_starslibrarynet from . import adapter_starslibrarynet
# from . import adapter_fanficauthorsnet from . import adapter_fanficauthorsnet
# from . import adapter_fireflyfansnet from . import adapter_fireflyfansnet
# from . import adapter_fireflypopulliorg from . import adapter_fireflypopulliorg
# from . import adapter_sebklainenet from . import adapter_sebklainenet
# from . import adapter_shriftweborgbfa from . import adapter_shriftweborgbfa
# from . import adapter_trekfanfictionnet from . import adapter_trekfanfictionnet
# from . import adapter_wuxiaworldcom from . import adapter_wuxiaworldcom
# from . import adapter_wwwlushstoriescom from . import adapter_wwwlushstoriescom
# from . import adapter_wwwutopiastoriescom from . import adapter_wwwutopiastoriescom
# from . import adapter_sinfuldreamscomunicornfic from . import adapter_sinfuldreamscomunicornfic
# from . import adapter_sinfuldreamscomwhisperedmuse from . import adapter_sinfuldreamscomwhisperedmuse
# from . import adapter_sinfuldreamscomwickedtemptation from . import adapter_sinfuldreamscomwickedtemptation
# from . import adapter_asianfanficscom from . import adapter_asianfanficscom
# from . import adapter_webnovelcom from . import adapter_webnovelcom
# from . import adapter_deandamagecom from . import adapter_deandamagecom
# from . import adapter_imrightbehindyoucom from . import adapter_imrightbehindyoucom
# from . import adapter_mttjustoncenet from . import adapter_mttjustoncenet
# from . import adapter_narutoficorg from . import adapter_narutoficorg
# from . import adapter_starskyhutcharchivenet from . import adapter_starskyhutcharchivenet
# from . import adapter_swordborderlineangelcom from . import adapter_swordborderlineangelcom
# from . import adapter_tasteofpoisoninkubationnet from . import adapter_tasteofpoisoninkubationnet
# from . import adapter_thebrokenworldorg from . import adapter_thebrokenworldorg
# from . import adapter_thedelphicexpansecom from . import adapter_thedelphicexpansecom
# from . import adapter_thundercatsfansorg from . import adapter_thundercatsfansorg
# from . import adapter_unknowableroomorg from . import adapter_unknowableroomorg
# from . import adapter_www13hoursorg from . import adapter_www13hoursorg
# from . import adapter_wwwaneroticstorycom from . import adapter_wwwaneroticstorycom
# from . import adapter_gravitytalescom from . import adapter_gravitytalescom
# from . import adapter_lcfanficcom from . import adapter_lcfanficcom
# from . import adapter_noveltrovecom from . import adapter_noveltrovecom
# from . import adapter_inkbunnynet from . import adapter_inkbunnynet
# from . import adapter_alternatehistorycom from . import adapter_alternatehistorycom
# from . import adapter_wattpadcom from . import adapter_wattpadcom
# from . import adapter_lightnovelgatecom from . import adapter_lightnovelgatecom
# from . import adapter_wwwnovelallcom from . import adapter_wwwnovelallcom
# from . import adapter_wuxiaworldco from . import adapter_wuxiaworldco
# from . import adapter_harrypotterfanfictioncom from . import adapter_harrypotterfanfictioncom
## This bit of complexity allows adapters to be added by just adding ## This bit of complexity allows adapters to be added by just adding
## importing. It eliminates the long if/else clauses we used to need ## importing. It eliminates the long if/else clauses we used to need

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2017 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,12 +20,15 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six import string_types as basestring
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
class AdAstraFanficComSiteAdapter(BaseSiteAdapter): class AdAstraFanficComSiteAdapter(BaseSiteAdapter):
@ -73,7 +76,7 @@ class AdAstraFanficComSiteAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# -- coding: utf-8 -- # -- coding: utf-8 --
# Copyright 2013 Fanficdownloader team, 2017 FanFicFare team # Copyright 2013 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -23,12 +23,15 @@ import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import sys import sys
import urllib2
from bs4 import UnicodeDammit from bs4 import UnicodeDammit
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
################################################################################ ################################################################################
@ -199,7 +202,7 @@ class AdultFanFictionOrgAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist("Code: 404. {0}".format(url)) raise exceptions.StoryDoesNotExist("Code: 404. {0}".format(url))
elif e.code == 410: elif e.code == 410:
@ -265,7 +268,7 @@ class AdultFanFictionOrgAdapter(BaseSiteAdapter):
logger.debug('Getting the author page: {0}'.format(author_Url)) logger.debug('Getting the author page: {0}'.format(author_Url))
try: try:
adata = self._fetchUrl(author_Url) adata = self._fetchUrl(author_Url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code in 404: if e.code in 404:
raise exceptions.StoryDoesNotExist("Author Page: Code: 404. {0}".format(author_Url)) raise exceptions.StoryDoesNotExist("Author Page: Code: 404. {0}".format(author_Url))
elif e.code == 410: elif e.code == 410:
@ -303,7 +306,7 @@ class AdultFanFictionOrgAdapter(BaseSiteAdapter):
logger.debug('Getting the author page: {0}'.format(author_Url)) logger.debug('Getting the author page: {0}'.format(author_Url))
try: try:
adata = self._fetchUrl(author_Url) adata = self._fetchUrl(author_Url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code in 404: if e.code in 404:
raise exceptions.StoryDoesNotExist("Author Page: Code: 404. {0}".format(author_Url)) raise exceptions.StoryDoesNotExist("Author Page: Code: 404. {0}".format(author_Url))
elif e.code == 410: elif e.code == 410:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2017 FanFicFare team # Copyright 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -16,7 +16,7 @@
# #
from __future__ import absolute_import from __future__ import absolute_import
from adapter_forumquestionablequestingcom import QuestionablequestingComAdapter from .adapter_forumquestionablequestingcom import QuestionablequestingComAdapter
def getClass(): def getClass():
return WWWAlternatehistoryComAdapter return WWWAlternatehistoryComAdapter

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2017 FanFicFare team # Copyright 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -22,12 +22,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -125,7 +126,7 @@ class AndromedaWebComAdapter(BaseSiteAdapter): # XXX
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:
@ -159,7 +160,7 @@ class AndromedaWebComAdapter(BaseSiteAdapter): # XXX
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2014 Fanficdownloader team, 2017 FanFicFare team # Copyright 2014 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -19,12 +19,15 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
import json import json
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -155,7 +158,7 @@ class ArchiveOfOurOwnOrgAdapter(BaseSiteAdapter):
if "This work could have adult content. If you proceed you have agreed that you are willing to see such content." in 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) raise exceptions.AdultCheckRequired(self.url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2017 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -19,12 +19,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
@ -80,7 +81,7 @@ class ArchiveSkyeHawkeComAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2017 FanFicFare team # Copyright 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -22,12 +22,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -125,7 +126,7 @@ class ArtemisFowlComAdapter(BaseSiteAdapter): # XXX
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:
@ -159,7 +160,7 @@ class ArtemisFowlComAdapter(BaseSiteAdapter): # XXX
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2013 Fanficdownloader team, 2017 FanFicFare team # Copyright 2013 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -19,8 +19,6 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
import urlparse
import os import os
from bs4.element import Comment from bs4.element import Comment
@ -28,6 +26,11 @@ from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
import sys import sys
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib import parse as urlparse
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -83,7 +86,7 @@ class ASexStoriesComAdapter(BaseSiteAdapter):
soup1 = self.make_soup(data1) soup1 = self.make_soup(data1)
#strip comments from soup #strip comments from soup
[comment.extract() for comment in soup1.find_all(text=lambda text:isinstance(text, Comment))] [comment.extract() for comment in soup1.find_all(text=lambda text:isinstance(text, Comment))]
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2017 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,12 +20,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -115,7 +116,7 @@ class AshwinderSycophantHexComAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -4,11 +4,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -125,7 +127,7 @@ class AsianFanFicsComAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2013 Fanficdownloader team, 2017 FanFicFare team # Copyright 2013 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,12 +20,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -85,7 +86,7 @@ class Asr3SlashzoneOrgAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:
@ -105,7 +106,7 @@ class Asr3SlashzoneOrgAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2017 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -51,14 +51,16 @@ import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib import urllib
import urllib2
import sys import sys
import urlparse
from bs4 import Comment from bs4 import Comment
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib import parse as urlparse
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -111,7 +113,7 @@ class BDSMLibraryComSiteAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(self.url) data = self._fetchUrl(self.url)
soup = self.make_soup(data) soup = self.make_soup(data)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:
@ -133,7 +135,7 @@ class BDSMLibraryComSiteAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(self.url) data = self._fetchUrl(self.url)
soup = self.make_soup(data) soup = self.make_soup(data)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,8 +1,6 @@
from __future__ import absolute_import from __future__ import absolute_import
from datetime import timedelta from datetime import timedelta
import re import re
import urllib2
import urlparse
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
@ -10,6 +8,11 @@ logger = logging.getLogger(__name__)
from bs4 import BeautifulSoup from bs4 import BeautifulSoup
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib import parse as urlparse
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
from .. import exceptions from .. import exceptions
@ -48,7 +51,7 @@ class BloodshedverseComAdapter(BaseSiteAdapter):
if exception: if exception:
try: try:
data = self._fetchUrl(url, parameters) data = self._fetchUrl(url, parameters)
except urllib2.HTTPError: except HTTPError:
raise exception(self.url) raise exception(self.url)
# Just let self._fetchUrl throw the exception, don't catch and # Just let self._fetchUrl throw the exception, don't catch and
# customize it. # customize it.

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2017 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,12 +20,14 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from bs4.element import Tag from bs4.element import Tag
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
# By virtue of being recent and requiring both is_adult and user/pass, # By virtue of being recent and requiring both is_adult and user/pass,
@ -150,7 +152,7 @@ class BloodTiesFansComAdapter(BaseSiteAdapter): # XXX
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:
@ -184,7 +186,7 @@ class BloodTiesFansComAdapter(BaseSiteAdapter): # XXX
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2017 FanFicFare team # Copyright 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,12 +20,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -123,7 +124,7 @@ class BuffyGilesComAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:
@ -157,7 +158,7 @@ class BuffyGilesComAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2017 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,12 +20,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -88,7 +89,7 @@ class ChaosSycophantHexComAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2012 Fanficdownloader team, 2017 FanFicFare team # Copyright 2012 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,13 +20,16 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
import sys import sys
from bs4.element import Comment from bs4.element import Comment
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -85,7 +88,7 @@ class ChosenTwoFanFicArchiveAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2017 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -19,12 +19,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
@ -87,7 +88,7 @@ class CSIForensicsComAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2015 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2017 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2013 Fanficdownloader team, 2017 FanFicFare team # Copyright 2013 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,12 +20,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -123,7 +124,7 @@ class DeepInMySoulNetAdapter(BaseSiteAdapter): # XXX
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:
@ -157,7 +158,7 @@ class DeepInMySoulNetAdapter(BaseSiteAdapter): # XXX
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2012 Fanficdownloader team, 2017 FanFicFare team # Copyright 2012 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,12 +20,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -88,7 +89,7 @@ class DestinysGatewayComAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:
@ -108,7 +109,7 @@ class DestinysGatewayComAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2017 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -19,12 +19,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -126,7 +127,7 @@ class DokugaComAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2012 Fanficdownloader team, 2017 FanFicFare team # Copyright 2012 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,12 +20,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -122,7 +123,7 @@ class DracoAndGinnyComAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:
@ -147,7 +148,7 @@ class DracoAndGinnyComAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2017 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,12 +20,14 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from bs4.element import Tag from bs4.element import Tag
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -122,7 +124,7 @@ class DramioneOrgAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2013 Fanficdownloader team, 2017 FanFicFare team # Copyright 2013 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,12 +20,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -79,7 +80,7 @@ class EfictionEstelielDeAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2012 Fanficdownloader team, 2017 FanFicFare team # Copyright 2012 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,12 +20,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -110,7 +111,7 @@ class EFPFanFicNet(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2017 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,12 +20,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -88,7 +89,7 @@ class ErosnSapphoSycophantHexComAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:
@ -108,7 +109,7 @@ class ErosnSapphoSycophantHexComAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# -- coding: utf-8 -- # -- coding: utf-8 --
# Copyright 2013 Fanficdownloader team, 2017 FanFicFare team # Copyright 2013 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -24,12 +24,15 @@ import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import sys import sys
import urllib2
from bs4 import UnicodeDammit, Comment from bs4 import UnicodeDammit, Comment
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
#################################################################################################### ####################################################################################################
@ -157,7 +160,7 @@ class FanficAuthorsNetAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url+'index/', params, usecache=False) data = self._fetchUrl(url+'index/', params, usecache=False)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist("Code: 404. {0}".format(url)) raise exceptions.StoryDoesNotExist("Code: 404. {0}".format(url))
elif e.code == 410: elif e.code == 410:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2014 Fanficdownloader team, 2017 FanFicFare team # Copyright 2014 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,12 +20,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
# In general an 'adapter' needs to do these five things: # In general an 'adapter' needs to do these five things:
@ -138,7 +139,7 @@ class FanficCastleTVNetAdapter(BaseSiteAdapter): # XXX
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:
@ -163,7 +164,7 @@ class FanficCastleTVNetAdapter(BaseSiteAdapter): # XXX
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# coding=utf-8 # coding=utf-8
# Copyright 2014 Fanficdownloader team, 2017 FanFicFare team # Copyright 2014 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -17,8 +17,10 @@
from __future__ import absolute_import from __future__ import absolute_import
import re import re
import urllib2 # py2 vs py3 transition
import urlparse from ..six import text_type as unicode
from ..six.moves.urllib import parse as urlparse
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
from .. import exceptions from .. import exceptions
@ -62,7 +64,7 @@ class FanficHuAdapter(BaseSiteAdapter):
if exception: if exception:
try: try:
data = self._fetchUrl(url, parameters) data = self._fetchUrl(url, parameters)
except urllib2.HTTPError: except HTTPError:
raise exception(self.url) raise exception(self.url)
# Just let self._fetchUrl throw the exception, don't catch and # Just let self._fetchUrl throw the exception, don't catch and
# customize it. # customize it.

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2017 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,12 +20,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
# By virtue of being recent and requiring both is_adult and user/pass, # By virtue of being recent and requiring both is_adult and user/pass,
@ -147,7 +148,7 @@ class FanfictionJunkiesDeAdapter(BaseSiteAdapter): # XXX
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2012 Fanficdownloader team, 2017 FanFicFare team # Copyright 2012 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -21,13 +21,14 @@ import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib import urllib
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -119,7 +120,7 @@ class FanFiktionDeAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2014 Fanficdownloader team, 2015 FanFicFare team # Copyright 2014 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2014 Fanficdownloader team, 2015 FanFicFare team # Copyright 2014 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2017 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,13 +20,16 @@ import datetime
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from .. import translit from .. import translit
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
@ -77,7 +80,7 @@ class FicBookNetAdapter(BaseSiteAdapter):
logger.debug("URL: "+url) logger.debug("URL: "+url)
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2017 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,12 +20,13 @@ import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib import urllib
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
class FictionAlleyOrgSiteAdapter(BaseSiteAdapter): class FictionAlleyOrgSiteAdapter(BaseSiteAdapter):
@ -80,7 +81,7 @@ class FictionAlleyOrgSiteAdapter(BaseSiteAdapter):
try: try:
data = self._postFetchWithIAmOld(url) data = self._postFetchWithIAmOld(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2016 FanFicFare team # Copyright 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -19,11 +19,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from .. import exceptions as exceptions from .. import exceptions as exceptions
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
class FictionHuntComSiteAdapter(BaseSiteAdapter): class FictionHuntComSiteAdapter(BaseSiteAdapter):
@ -69,7 +71,7 @@ class FictionHuntComSiteAdapter(BaseSiteAdapter):
url = self.url url = self.url
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.meta) raise exceptions.StoryDoesNotExist(self.meta)
else: else:

View file

@ -1,7 +1,9 @@
from __future__ import absolute_import from __future__ import absolute_import
import re import re
import urllib2 # py2 vs py3 transition
import urlparse from ..six import text_type as unicode
from ..six.moves.urllib import parse as urlparse
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
@ -45,7 +47,7 @@ class FictionManiaTVAdapter(BaseSiteAdapter):
if exception: if exception:
try: try:
data = self._fetchUrl(url, parameters) data = self._fetchUrl(url, parameters)
except urllib2.HTTPError: except HTTPError:
raise exception(self.url) raise exception(self.url)
# Just let self._fetchUrl throw the exception, don't catch and # Just let self._fetchUrl throw the exception, don't catch and
# customize it. # customize it.

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2013 Fanficdownloader team, 2015 FanFicFare team # Copyright 2013 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -19,13 +19,16 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
import json import json
#from ..htmlcleanup import stripHTML #from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
class FictionPadSiteAdapter(BaseSiteAdapter): class FictionPadSiteAdapter(BaseSiteAdapter):
@ -122,7 +125,7 @@ class FictionPadSiteAdapter(BaseSiteAdapter):
data = data[:data.rindex(";")] data = data[:data.rindex(";")]
data = data.replace('tables:','"tables":') data = data.replace('tables:','"tables":')
tables = json.loads(data)['tables'] tables = json.loads(data)['tables']
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(url) raise exceptions.StoryDoesNotExist(url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2015 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -19,9 +19,12 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
# py2 vs py3 transition
from ..six import text_type as unicode
## They're from the same people and pretty much identical. ## They're from the same people and pretty much identical.
from adapter_fanfictionnet import FanFictionNetSiteAdapter from .adapter_fanfictionnet import FanFictionNetSiteAdapter
class FictionPressComSiteAdapter(FanFictionNetSiteAdapter): class FictionPressComSiteAdapter(FanFictionNetSiteAdapter):

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2015 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -19,12 +19,14 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
import httplib, urllib
from .. import exceptions as exceptions from .. import exceptions as exceptions
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
class FicwadComSiteAdapter(BaseSiteAdapter): class FicwadComSiteAdapter(BaseSiteAdapter):
@ -95,7 +97,7 @@ class FicwadComSiteAdapter(BaseSiteAdapter):
if "<h4>Featured Story</h4>" in data: if "<h4>Featured Story</h4>" in data:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
soup = self.make_soup(data) soup = self.make_soup(data)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:
@ -117,7 +119,7 @@ class FicwadComSiteAdapter(BaseSiteAdapter):
self._setURL(url) self._setURL(url)
try: try:
soup = self.make_soup(self._fetchUrl(url)) soup = self.make_soup(self._fetchUrl(url))
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2017 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -21,13 +21,16 @@ from datetime import date, datetime
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
import cookielib as cl
import json import json
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from ..six.moves import http_cookiejar as cl
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -98,7 +101,7 @@ class FimFictionNetSiteAdapter(BaseSiteAdapter):
data = self.do_fix_blockquotes(self._fetchUrl(self.url, data = self.do_fix_blockquotes(self._fetchUrl(self.url,
usecache=(not self.is_adult))) usecache=(not self.is_adult)))
soup = self.make_soup(data) soup = self.make_soup(data)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2013 Fanficdownloader team, 2015 FanFicFare team # Copyright 2013 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -18,7 +18,11 @@
from __future__ import absolute_import from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
from adapter_storiesonlinenet import StoriesOnlineNetAdapter
# py2 vs py3 transition
from ..six import text_type as unicode
from .adapter_storiesonlinenet import StoriesOnlineNetAdapter
def getClass(): def getClass():
return FineStoriesComAdapter return FineStoriesComAdapter

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2017 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -22,7 +22,9 @@ from __future__ import absolute_import
import logging import logging
import re import re
import sys import sys
import urllib2 # py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
@ -79,7 +81,7 @@ class FireFlyFansNetSiteAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,5 +1,5 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2017 FanFicFare team # Copyright 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -25,9 +25,12 @@ from __future__ import absolute_import
''' This adapter scrapes the metadata and chapter text from stories on firefly.populli.org ''' ''' This adapter scrapes the metadata and chapter text from stories on firefly.populli.org '''
import logging import logging
import re import re
import urllib2
import sys import sys
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
from .. import exceptions as exceptions from .. import exceptions as exceptions
@ -98,7 +101,7 @@ class FireflyPopulliOrgSiteAdapter(BaseSiteAdapter):
''' '''
try: try:
page_data = self._fetchUrl(page) page_data = self._fetchUrl(page)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist('404 error: {}'.format(page)) raise exceptions.StoryDoesNotExist('404 error: {}'.format(page))
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2017 FanFicFare team # Copyright 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.

View file

@ -1,7 +1,7 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2015 FanFicFare team # Copyright 2018 FanFicFare team
# Copyright 2016 FanFicFare team # Copyright 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2014 Fanficdownloader team, 2017 FanFicFare team # Copyright 2014 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -21,7 +21,6 @@
from __future__ import absolute_import from __future__ import absolute_import
import logging import logging
import re import re
import urllib2
from datetime import datetime from datetime import datetime
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
@ -37,6 +36,10 @@ except ImportError:
# logger.warn('No version of feedparser module available, falling back to naive published and updated date') # logger.warn('No version of feedparser module available, falling back to naive published and updated date')
feedparser = None feedparser = None
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter from .base_adapter import BaseSiteAdapter
from .. import exceptions as exceptions from .. import exceptions as exceptions
@ -93,7 +96,7 @@ class GravityTalesComSiteAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist('Error 404: {0}'.format(self.url)) raise exceptions.StoryDoesNotExist('Error 404: {0}'.format(self.url))
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2017 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -19,12 +19,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
class HarryPotterFanFictionComSiteAdapter(BaseSiteAdapter): class HarryPotterFanFictionComSiteAdapter(BaseSiteAdapter):
@ -70,7 +71,7 @@ class HarryPotterFanFictionComSiteAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2012 Fanficdownloader team, 2017 FanFicFare team # Copyright 2012 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,12 +20,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -78,7 +79,7 @@ class HLFictionNetAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2012 Fanficdownloader team, 2017 FanFicFare team # Copyright 2012 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,12 +20,14 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from bs4.element import Comment from bs4.element import Comment
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -78,7 +80,7 @@ class HPFanficArchiveComAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2017 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,11 +20,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -121,7 +123,7 @@ class IkEternalNetAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:
@ -159,7 +161,7 @@ class IkEternalNetAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2013 Fanficdownloader team, 2017 FanFicFare team # Copyright 2013 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,12 +20,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -122,7 +123,7 @@ class ImagineEFicComAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:
@ -147,7 +148,7 @@ class ImagineEFicComAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2017 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.

View file

@ -22,14 +22,17 @@ from __future__ import absolute_import
import logging import logging
import re import re
import sys import sys
import urllib2
from datetime import datetime, timedelta from datetime import datetime, timedelta
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
from .. import exceptions as exceptions from .. import exceptions as exceptions
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
UNIX_EPOCHE = datetime.fromtimestamp(0) UNIX_EPOCHE = datetime.fromtimestamp(86400)
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
@ -123,7 +126,7 @@ class InkBunnyNetSiteAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist('Error 404: {0}'.format(self.url)) raise exceptions.StoryDoesNotExist('Error 404: {0}'.format(self.url))
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2015 FanFicFare team # Copyright 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2013 Fanficdownloader team, 2017 FanFicFare team # Copyright 2013 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,12 +20,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -123,7 +124,7 @@ class KiaRepositoryMujajiNetAdapter(BaseSiteAdapter): # XXX
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:
@ -157,7 +158,7 @@ class KiaRepositoryMujajiNetAdapter(BaseSiteAdapter): # XXX
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2017 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,12 +20,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
# Search for XXX comments--that's where things are most likely to need changing. # Search for XXX comments--that's where things are most likely to need changing.
@ -101,7 +102,7 @@ class KSArchiveComAdapter(BaseSiteAdapter): # XXX
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:
@ -134,7 +135,7 @@ class KSArchiveComAdapter(BaseSiteAdapter): # XXX
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2014 Fanficdownloader team, 2015 FanFicFare team # Copyright 2014 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -23,9 +23,12 @@ import logging
import json import json
import re import re
import sys # ## used for debug purposes import sys # ## used for debug purposes
import urllib2
import datetime import datetime
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
from .. import exceptions as exceptions from .. import exceptions as exceptions
@ -96,7 +99,7 @@ class LCFanFicComSiteAdapter(BaseSiteAdapter):
url = self.url url = self.url
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist('Error 404: {0}'.format(self.url)) raise exceptions.StoryDoesNotExist('Error 404: {0}'.format(self.url))
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2015 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.

View file

@ -22,8 +22,10 @@
from __future__ import absolute_import from __future__ import absolute_import
import logging import logging
import re import re
import urllib2 # py2 vs py3 transition
import urlparse from ..six import text_type as unicode
from ..six.moves.urllib import parse as urlparse
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
@ -96,7 +98,7 @@ class LightNovelGateSiteAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist('404 error: {}'.format(url)) raise exceptions.StoryDoesNotExist('404 error: {}'.format(url))
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2013 Fanficdownloader team, 2017 FanFicFare team # Copyright 2013 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -19,13 +19,16 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
import urlparse
from bs4.element import Comment from bs4.element import Comment
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib import parse as urlparse
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
class LiteroticaSiteAdapter(BaseSiteAdapter): class LiteroticaSiteAdapter(BaseSiteAdapter):
@ -132,7 +135,7 @@ class LiteroticaSiteAdapter(BaseSiteAdapter):
soup1 = self.make_soup(data1) soup1 = self.make_soup(data1)
#strip comments from soup #strip comments from soup
[comment.extract() for comment in soup1.findAll(text=lambda text:isinstance(text, Comment))] [comment.extract() for comment in soup1.findAll(text=lambda text:isinstance(text, Comment))]
except urllib2.HTTPError, e: except HTTPError as e:
if e.code in [404, 410]: if e.code in [404, 410]:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:
@ -157,7 +160,7 @@ class LiteroticaSiteAdapter(BaseSiteAdapter):
#strip comments from soup #strip comments from soup
[comment.extract() for comment in soupAuth.findAll(text=lambda text:isinstance(text, Comment))] [comment.extract() for comment in soupAuth.findAll(text=lambda text:isinstance(text, Comment))]
# logger.debug(soupAuth) # logger.debug(soupAuth)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code in [404, 410]: if e.code in [404, 410]:
raise exceptions.StoryDoesNotExist(authorurl) raise exceptions.StoryDoesNotExist(authorurl)
else: else:

View file

@ -1,7 +1,7 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2015 FanFicFare team # Copyright 2018 FanFicFare team
# Copyright 2016 FanFicFare team # Copyright 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2014 Fanficdownloader team, 2015 FanFicFare team # Copyright 2014 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2017 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -23,11 +23,13 @@ import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib import urllib
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
class LOTRgficComAdapter(BaseSiteAdapter): class LOTRgficComAdapter(BaseSiteAdapter):
@ -79,7 +81,7 @@ class LOTRgficComAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2017 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,12 +20,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -88,7 +89,7 @@ class LumosSycophantHexComAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2017 FanFicFare team # Copyright 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,10 +20,12 @@ import bs4
import datetime import datetime
import logging import logging
import re import re
import urllib2
from ..htmlcleanup import removeEntities, stripHTML from ..htmlcleanup import removeEntities, stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
@ -115,7 +117,7 @@ class MassEffect2InAdapter(BaseSiteAdapter):
try: try:
startingChapter = self._makeChapter(self.url) startingChapter = self._makeChapter(self.url)
except urllib2.HTTPError, error: except HTTPError as error:
if error.code == 404: if error.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
raise raise
@ -199,7 +201,7 @@ class MassEffect2InAdapter(BaseSiteAdapter):
chapterTitle = re.sub(garbagePattern, u'', chapter.getHeading()[chapterTitleStart:]) chapterTitle = re.sub(garbagePattern, u'', chapter.getHeading()[chapterTitleStart:])
self.add_chapter(chapterTitle, url) self.add_chapter(chapterTitle, url)
except ParsingError, error: except ParsingError as error:
raise exceptions.FailedToDownload(u"Failed to download chapter `%s': %s" % (url, error)) raise exceptions.FailedToDownload(u"Failed to download chapter `%s': %s" % (url, error))
# Some metadata are handled separately due to format conversions. # Some metadata are handled separately due to format conversions.

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2013 Fanficdownloader team, 2017 FanFicFare team # Copyright 2013 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -19,14 +19,17 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
import urlparse
import os import os
from bs4.element import Comment from bs4.element import Comment
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib import parse as urlparse
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
class MCStoriesComSiteAdapter(BaseSiteAdapter): class MCStoriesComSiteAdapter(BaseSiteAdapter):
@ -85,7 +88,7 @@ class MCStoriesComSiteAdapter(BaseSiteAdapter):
soup1 = self.make_soup(data1) soup1 = self.make_soup(data1)
#strip comments from soup #strip comments from soup
[comment.extract() for comment in soup1.find_all(text=lambda text:isinstance(text, Comment))] [comment.extract() for comment in soup1.find_all(text=lambda text:isinstance(text, Comment))]
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2017 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,11 +20,13 @@ import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib import urllib
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
class MediaMinerOrgSiteAdapter(BaseSiteAdapter): class MediaMinerOrgSiteAdapter(BaseSiteAdapter):
@ -108,7 +110,7 @@ class MediaMinerOrgSiteAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) # w/o trailing / gets 'chapter list' page even for one-shots. data = self._fetchUrl(url) # w/o trailing / gets 'chapter list' page even for one-shots.
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
logger.error("404 on %s"%url) logger.error("404 on %s"%url)
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2012 Fanficdownloader team, 2017 FanFicFare team # Copyright 2012 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,12 +20,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -122,7 +123,7 @@ class MerlinFicDtwinsCoUk(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:
@ -147,7 +148,7 @@ class MerlinFicDtwinsCoUk(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2017 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,12 +20,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
# Search for XXX comments--that's where things are most likely to need changing. # Search for XXX comments--that's where things are most likely to need changing.
@ -106,7 +107,7 @@ class MidnightwhispersAdapter(BaseSiteAdapter): # XXX
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:
@ -139,7 +140,7 @@ class MidnightwhispersAdapter(BaseSiteAdapter): # XXX
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2017 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2016 FanFicFare team # Copyright 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2017 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2012 Fanficdownloader team, 2017 FanFicFare team # Copyright 2012 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,12 +20,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -83,7 +84,7 @@ class NationalLibraryNetAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2012 Fanficdownloader team, 2017 FanFicFare team # Copyright 2012 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,12 +20,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -82,7 +83,7 @@ class NCISFicComAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2012 Fanficdownloader team, 2017 FanFicFare team # Copyright 2012 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2017 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,12 +20,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
# Search for XXX comments--that's where things are most likely to need changing. # Search for XXX comments--that's where things are most likely to need changing.
@ -101,7 +102,7 @@ class NfaCommunityComAdapter(BaseSiteAdapter): # XXX
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:
@ -134,7 +135,7 @@ class NfaCommunityComAdapter(BaseSiteAdapter): # XXX
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2012 Fanficdownloader team, 2015 FanFicFare team # Copyright 2012 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2015 Fanficdownloader team, 2015 FanFicFare team # Copyright 2015 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.

View file

@ -2,11 +2,13 @@
from __future__ import absolute_import from __future__ import absolute_import
import re import re
import urllib2
import urlparse
from bs4.element import Tag from bs4.element import Tag
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib import parse as urlparse
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
from .. import exceptions from .. import exceptions
@ -48,7 +50,7 @@ class NocturnalLightNetAdapter(BaseSiteAdapter):
if exception: if exception:
try: try:
data = self._fetchUrl(url, parameters) data = self._fetchUrl(url, parameters)
except urllib2.HTTPError: except HTTPError:
raise exception(self.url) raise exception(self.url)
# Just let self._fetchUrl throw the exception, don't catch and # Just let self._fetchUrl throw the exception, don't catch and
# customize it. # customize it.

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2014 Fanficdownloader team, 2017 FanFicFare team # Copyright 2014 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -23,9 +23,12 @@ import logging
import json import json
import re import re
import sys # ## used for debug purposes import sys # ## used for debug purposes
import urllib2
import datetime import datetime
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
from .. import exceptions as exceptions from .. import exceptions as exceptions
@ -88,7 +91,7 @@ class NovelTroveComSiteAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist('Error 404: {0}'.format(self.url)) raise exceptions.StoryDoesNotExist('Error 404: {0}'.format(self.url))
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2017 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,12 +20,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -114,7 +115,7 @@ class OcclumencySycophantHexComAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2017 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -19,12 +19,14 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2, urllib, cookielib
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -111,7 +113,7 @@ class PhoenixSongNetAdapter(BaseSiteAdapter):
if self.getConfig('force_login'): if self.getConfig('force_login'):
self.performLogin(url) self.performLogin(url)
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2012 Fanficdownloader team, 2017 FanFicFare team # Copyright 2012 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,12 +20,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -92,7 +93,7 @@ class PonyFictionArchiveNetAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:
@ -113,7 +114,7 @@ class PonyFictionArchiveNetAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2017 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -21,12 +21,13 @@ import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib import urllib
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
class PotionsAndSnitchesOrgSiteAdapter(BaseSiteAdapter): class PotionsAndSnitchesOrgSiteAdapter(BaseSiteAdapter):
@ -65,7 +66,7 @@ class PotionsAndSnitchesOrgSiteAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2013 Fanficdownloader team, 2017 FanFicFare team # Copyright 2013 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,12 +20,13 @@ import datetime
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter from .base_adapter import BaseSiteAdapter
# This function is called by the downloader in all adapter_*.py files # This function is called by the downloader in all adapter_*.py files
@ -145,7 +146,7 @@ class PotterFicsComAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2013 Fanficdownloader team, 2017 FanFicFare team # Copyright 2013 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,12 +20,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -122,7 +123,7 @@ class PotterHeadsAnonymousComAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:
@ -156,7 +157,7 @@ class PotterHeadsAnonymousComAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2012 Fanficdownloader team, 2017 FanFicFare team # Copyright 2012 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,12 +20,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -91,7 +92,7 @@ class PretenderCenterComAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:
@ -111,7 +112,7 @@ class PretenderCenterComAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2012 Fanficdownloader team, 2017 FanFicFare team # Copyright 2012 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,12 +20,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -88,7 +89,7 @@ class QafFicComAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:
@ -108,7 +109,7 @@ class QafFicComAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -2,11 +2,14 @@
from __future__ import absolute_import from __future__ import absolute_import
import re import re
import urlparse
import urllib2
import datetime import datetime
from .. import exceptions from .. import exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib import parse as urlparse
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter from .base_adapter import BaseSiteAdapter
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
@ -52,7 +55,7 @@ class QuotevComAdapter(BaseSiteAdapter):
def extractChapterUrlsAndMetadata(self): def extractChapterUrlsAndMetadata(self):
try: try:
data = self._fetchUrl(self.url) data = self._fetchUrl(self.url)
except urllib2.HTTPError as e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist("Code: %s: %s"%(e.code,self.url)) raise exceptions.StoryDoesNotExist("Code: %s: %s"%(e.code,self.url))
else: else:

View file

@ -18,14 +18,17 @@
from __future__ import absolute_import from __future__ import absolute_import
import contextlib import contextlib
from datetime import datetime from datetime import datetime
import httplib
import logging import logging
import re import re
import urllib2
from .. import exceptions as exceptions from .. import exceptions as exceptions
from ..dateutils import parse_relative_date_string from ..dateutils import parse_relative_date_string
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves import http_client as httplib
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter from .base_adapter import BaseSiteAdapter
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
@ -143,7 +146,7 @@ class RoyalRoadAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2017 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -19,12 +19,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
# By virtue of being recent and requiring both is_adult and user/pass, # By virtue of being recent and requiring both is_adult and user/pass,
@ -151,7 +152,7 @@ class SamAndJackNetAdapter(BaseSiteAdapter): # XXX
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:
@ -184,7 +185,7 @@ class SamAndJackNetAdapter(BaseSiteAdapter): # XXX
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2012 Fanficdownloader team, 2017 FanFicFare team # Copyright 2012 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -20,12 +20,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
def getClass(): def getClass():
@ -96,7 +97,7 @@ class ScarvesAndCoffeeNetAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:
@ -116,7 +117,7 @@ class ScarvesAndCoffeeNetAdapter(BaseSiteAdapter):
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2015 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2017 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -19,12 +19,13 @@ from __future__ import absolute_import
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
import re import re
import urllib2
from ..htmlcleanup import stripHTML from ..htmlcleanup import stripHTML
from .. import exceptions as exceptions from .. import exceptions as exceptions
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
# By virtue of being recent and requiring both is_adult and user/pass, # By virtue of being recent and requiring both is_adult and user/pass,
@ -146,7 +147,7 @@ class SheppardWeirComAdapter(BaseSiteAdapter): # XXX
try: try:
data = self._fetchUrl(url) data = self._fetchUrl(url)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist(self.url) raise exceptions.StoryDoesNotExist(self.url)
else: else:

View file

@ -1,5 +1,5 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2017 FanFicFare team # Copyright 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
@ -25,9 +25,12 @@ from __future__ import absolute_import
''' This adapter scrapes the metadata and chapter text from stories on archive.shriftweb.org ''' ''' This adapter scrapes the metadata and chapter text from stories on archive.shriftweb.org '''
import logging import logging
import re import re
import urllib2
import sys import sys
# py2 vs py3 transition
from ..six import text_type as unicode
from ..six.moves.urllib.error import HTTPError
from .base_adapter import BaseSiteAdapter, makeDate from .base_adapter import BaseSiteAdapter, makeDate
from .. import exceptions as exceptions from .. import exceptions as exceptions
@ -98,7 +101,7 @@ class BFAArchiveShriftwebOrgSiteAdapter(BaseSiteAdapter):
''' '''
try: try:
page_data = self._fetchUrl(page) page_data = self._fetchUrl(page)
except urllib2.HTTPError, e: except HTTPError as e:
if e.code == 404: if e.code == 404:
raise exceptions.StoryDoesNotExist('404 error: {}'.format(page)) raise exceptions.StoryDoesNotExist('404 error: {}'.format(page))
else: else:

View file

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Copyright 2011 Fanficdownloader team, 2017 FanFicFare team # Copyright 2011 Fanficdownloader team, 2018 FanFicFare team
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.

Some files were not shown because too many files have changed in this diff Show more