在花了 2 小时的大部分时间试图让我的代码使用 Instaloader 模块从 Sidecar 帖子中下载一定数量的帖子之后,我似乎找不到一个好的解决方案。
我想出了一种不必要的复杂方法来做到这一点,但我还没有实现,我希望我能把它作为最后的手段。
到目前为止我的代码片段
def _download_post(self, post, source, sidecar_limit):
# Get the @sidecar_limit of posts in a sidecar
if post.typename == 'GraphSidecar':
nodes = post.get_sidecar_nodes(end=sidecar_limit)
return self.loader.posts_download_loop(nodes, target='downloads')
# Otherwise download post normally
self.loader.download_post(post, source)
我的问题来自包含命名元组的可迭代nodes
对象,这些命名元组不包含许多普通帖子类将具有的所需属性。如date_utc
最后,最好指定我只想从 Sidecar 下载视频或图像。我确实有已经为我执行此操作的函数,并且该posts_download_loop
函数确实接受了一个可调用的,在返回时False
将取消下载并返回。但是我不希望函数返回,我希望它返回continue
并跳到下一篇文章。但我不确定是否有办法做到这一点。如果没有也没关系,因为这不是我的主要问题。
找到正确的 Instaloader 功能的任何帮助都会非常有帮助。谢谢。