@@ -1423,6 +1423,7 @@ Description
|
|||||||
This value sets the maximum recursion depth.
|
This value sets the maximum recursion depth.
|
||||||
|
|
||||||
Special values:
|
Special values:
|
||||||
|
|
||||||
* ``0``: Recursion is disabled
|
* ``0``: Recursion is disabled
|
||||||
* ``-1``: Infinite recursion (don't do this)
|
* ``-1``: Infinite recursion (don't do this)
|
||||||
|
|
||||||
@@ -1647,12 +1648,23 @@ Type
|
|||||||
``string``
|
``string``
|
||||||
Default
|
Default
|
||||||
``"timeline"``
|
``"timeline"``
|
||||||
|
Example
|
||||||
|
``"https://twitter.com/search?q=from:{legacy[screen_name]}"``
|
||||||
Description
|
Description
|
||||||
Output format for user results from
|
| Format string for user URLs generated from
|
||||||
``following`` and ``list-members`` queries.
|
``following`` and ``list-members`` queries,
|
||||||
|
| whose replacement field values come from Twitter ``user`` objects
|
||||||
|
(`Example <https://gist.githubusercontent.com/mikf/99d2719b3845023326c7a4b6fb88dd04/raw/275b4f0541a2c7dc0a86d3998f7d253e8f10a588/github.json>`_)
|
||||||
|
|
||||||
* ``"timeline"``: ``https://twitter.com/i/user/USERID``
|
Special values:
|
||||||
* ``"media"``: ``https://twitter.com/id:USERID/media``
|
|
||||||
|
* ``"timeline"``: ``https://twitter.com/i/user/{rest_id}``
|
||||||
|
* ``"media"``: ``https://twitter.com/id:{rest_id}/media``
|
||||||
|
|
||||||
|
Note: To allow gallery-dl to follow custom URL formats, set the blacklist__
|
||||||
|
for ``twitter`` to a non-default value, e.g. an empty string ``""``.
|
||||||
|
|
||||||
|
.. __: `extractor.*.blacklist & .whitelist`_
|
||||||
|
|
||||||
|
|
||||||
extractor.twitter.videos
|
extractor.twitter.videos
|
||||||
|
|||||||
@@ -225,16 +225,20 @@ class TwitterExtractor(Extractor):
|
|||||||
return cache[uid]
|
return cache[uid]
|
||||||
|
|
||||||
def _users_result(self, users):
|
def _users_result(self, users):
|
||||||
if self.config("users") == "media":
|
userfmt = self.config("users")
|
||||||
cls = TwitterMediaExtractor
|
if not userfmt or userfmt == "timeline":
|
||||||
fmt = "{}/id:{}/media".format
|
|
||||||
else:
|
|
||||||
cls = TwitterTimelineExtractor
|
cls = TwitterTimelineExtractor
|
||||||
fmt = "{}/i/user/{}".format
|
fmt = (self.root + "/i/user/{rest_id}").format_map
|
||||||
|
elif userfmt == "media":
|
||||||
|
cls = TwitterMediaExtractor
|
||||||
|
fmt = (self.root + "/id:{rest_id}/media").format_map
|
||||||
|
else:
|
||||||
|
cls = None
|
||||||
|
fmt = userfmt.format_map
|
||||||
|
|
||||||
for user in users:
|
for user in users:
|
||||||
user["_extractor"] = cls
|
user["_extractor"] = cls
|
||||||
yield Message.Queue, fmt(self.root, user["rest_id"]), user
|
yield Message.Queue, fmt(user), user
|
||||||
|
|
||||||
def metadata(self):
|
def metadata(self):
|
||||||
"""Return general metadata"""
|
"""Return general metadata"""
|
||||||
|
|||||||
Reference in New Issue
Block a user