【问题标题】:Module 'instaloader' has no attribute 'Instaloader'模块“instaloader”没有属性“Instaloader”
【发布时间】:2019-04-25 06:51:47
【问题描述】:

我正在尝试使用一个小脚本来获取特定时期的 instagram 帖子

代码如下:

from datetime import datetime
from itertools import dropwhile, takewhile
import instaloader

# Get instance
L = instaloader.Instaloader()


posts = instaloader.Profile.from_username(L.context, PROFILE).get_posts()

SINCE = datetime(2019, 4, 1)
UNTIL = datetime(2015, 4, 23)

for post in takewhile(lambda p: p.date > UNTIL, dropwhile(lambda p: p.date > SINCE, posts)):
    print(post.date)
    L.download_post(post)

当脚本运行时只打印这个:module 'instaloader' has no attribute 'Instaloader'

是的,我已经安装了模块。

【问题讨论】:

  • 您的项目中有自定义的instaloader 模块/包吗?如果是 - 请重命名。
  • 不,我没有
  • 我明白了,尝试在导入后立即添加print(instaloader),看看是否加载了正确的模块。
  • 你发现了吗?

标签: python-3.x pycharm instagram


【解决方案1】:

如果您的项目名称是 instaloader.py,请尝试将其重命名为不同的名称,因为它与 lib 的名称相同。

【讨论】:

    【解决方案2】:

    如果您在 ipython (Jupyter) 或 Idle 上运行,它们可能使用的是默认的 python 环境,而不是您运行命令的 virtualenv。

    对于 ipython (Jupyter),请参阅 this。

    闲置使用:

    (venv)$ python -m idlelib.idle file.py
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多