Handle missing preview

This occurs when processing flash files
This commit is contained in:
Thomas Wade 2020-04-21 05:39:40 +09:30
parent d13ab3ba6e
commit 65fba50c1c

View File

@ -29,6 +29,7 @@ class Submission:
self._faves: int = None
self._comments: List[Comment.Comment] = None
self._views: int = None
self._has_preview: bool = None
self._preview_url: str = None
self._download_url: str = None
self._faved: bool = None
@ -127,7 +128,7 @@ class Submission:
@property
def preview_url(self):
if not self._preview_url:
if (not self._preview_url and self._has_preview is True) or self._has_preview is None:
self._get_submission()
return self._preview_url
@ -177,11 +178,18 @@ class Submission:
self._gender = soup.select('.info div:nth-of-type(3) span')[0].text.strip()
self._faves = int(soup.select('.favorites .font-large')[0].text.strip())
self._views = int(soup.select('.views .font-large')[0].text.strip())
self._preview_url = 'https:' + soup.select('#submissionImg')[0].get('data-preview-src')
self._download_url = 'https:' + soup.select('#submissionImg')[0].get('data-fullview-src')
self._download_url = 'https:' + soup.select('.download a')[0].get('href')
self._faved = '-' in soup.select('.fav')[0].text
self._fave_url = FAAPI.FA_BASE_URL + soup.select('.fav a')[0].get('href')
# Parse preview
try:
self._preview_url = 'https:' + soup.select('#submissionImg')[0].get('data-preview-src')
except IndexError:
self._preview_url = None
finally:
self._has_preview = self._preview_url is not None
# Parse comments
self._comments = []
for comment_element in soup.select('.comment_container'):