diff --git a/fanficfare/adapters/adapter_fanfictionnet.py b/fanficfare/adapters/adapter_fanfictionnet.py index fd68f4d..80b8bd5 100644 --- a/fanficfare/adapters/adapter_fanfictionnet.py +++ b/fanficfare/adapters/adapter_fanfictionnet.py @@ -170,9 +170,11 @@ class FanFictionNetSiteAdapter(BaseSiteAdapter): elif 'Crossover' in categories[0]['href']: caturl = "https://%s%s"%(self.getSiteDomain(),categories[0]['href']) catsoup = self.make_soup(self._fetchUrl(caturl)) + found = False for a in catsoup.findAll('a',href=re.compile(r"^/crossovers/.+?/\d+/")): self.story.addToList('category',stripHTML(a)) - else: + found = True + if not found: # Fall back. I ran across a story with a Crossver # category link to a broken page once. # http://www.fanfiction.net/s/2622060/1/ @@ -181,8 +183,6 @@ class FanFictionNetSiteAdapter(BaseSiteAdapter): for c in stripHTML(categories[0]).replace(" Crossover","").split(' + '): self.story.addToList('category',c) - - a = soup.find('a', href=re.compile(r'https?://www\.fictionratings\.com/')) rating = a.string if 'Fiction' in rating: # if rating has 'Fiction ', strip that out for consistency with past.