From 01e34ca0eb89e86288d3ab1a81832d80f58797ab Mon Sep 17 00:00:00 2001 From: Jim Miller Date: Wed, 1 May 2019 09:00:33 -0500 Subject: [PATCH] Fix forumtags for XF2 changes. --- fanficfare/adapters/base_xenforo2forum_adapter.py | 3 +++ fanficfare/adapters/base_xenforoforum_adapter.py | 5 ++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/fanficfare/adapters/base_xenforo2forum_adapter.py b/fanficfare/adapters/base_xenforo2forum_adapter.py index 91f7eb28..0b273409 100644 --- a/fanficfare/adapters/base_xenforo2forum_adapter.py +++ b/fanficfare/adapters/base_xenforo2forum_adapter.py @@ -57,6 +57,9 @@ class BaseXenForo2ForumAdapter(BaseXenForoForumAdapter): self.story.setMetadata('title',stripHTML(h1)) # logger.debug(stripHTML(h1)) + def get_forumtags(self,topsoup): + return topsoup.find('div',{'class':'p-description'}).findAll('a',{'class':'tagItem'}) + def parse_author(self,souptag): a = souptag.find('section',{'class':'message-user'}).find('a',{'class':'username'}) # logger.debug(a) diff --git a/fanficfare/adapters/base_xenforoforum_adapter.py b/fanficfare/adapters/base_xenforoforum_adapter.py index 8eb86df3..f1408134 100644 --- a/fanficfare/adapters/base_xenforoforum_adapter.py +++ b/fanficfare/adapters/base_xenforoforum_adapter.py @@ -464,7 +464,7 @@ class BaseXenForoForumAdapter(BaseSiteAdapter): if use_threadmark_chaps or self.getConfig('always_use_forumtags'): ## only use tags if threadmarks for chapters or always_use_forumtags is on. - for tag in topsoup.findAll('a',{'class':'tag'}) + topsoup.findAll('span',{'class':'prefix'}): + for tag in self.get_forumtags(topsoup): tstr = stripHTML(tag) if self.getConfig('capitalize_forumtags'): tstr = tstr.title() @@ -535,6 +535,9 @@ class BaseXenForoForumAdapter(BaseSiteAdapter): tag.extract() self.story.setMetadata('title',stripHTML(h1)) + def get_forumtags(self,topsoup): + return topsoup.findAll('a',{'class':'tag'}) + topsoup.findAll('span',{'class':'prefix'}) + def parse_author(self,souptag): a = souptag.find('h3',{'class':'userText'}).find('a') self.story.addToList('authorId',a['href'].split('/')[1])