@@ -309,8 +309,20 @@ class FanboxCreatorExtractor(FanboxExtractor):
|
||||
self.creator_id = match.group(1) or match.group(2)
|
||||
|
||||
def posts(self):
|
||||
url = "https://api.fanbox.cc/post.listCreator?creatorId={}&limit=10"
|
||||
return self._pagination(url.format(self.creator_id))
|
||||
url = "https://api.fanbox.cc/post.paginateCreator?creatorId="
|
||||
return self._pagination_creator(url + self.creator_id)
|
||||
|
||||
def _pagination_creator(self, url):
|
||||
urls = self.request(url, headers=self.headers).json()["body"]
|
||||
for url in urls:
|
||||
url = text.ensure_http_scheme(url)
|
||||
body = self.request(url, headers=self.headers).json()["body"]
|
||||
for item in body:
|
||||
try:
|
||||
yield self._get_post_data(item["id"])
|
||||
except Exception as exc:
|
||||
self.log.warning("Skipping post %s (%s: %s)",
|
||||
item["id"], exc.__class__.__name__, exc)
|
||||
|
||||
|
||||
class FanboxPostExtractor(FanboxExtractor):
|
||||
|
||||
Reference in New Issue
Block a user