scrapy运行过程中报错,ModuleNotFoundError: No module named 'pymongo'

我直接运行单文件,并没有导入错误,此外,我单独在py文件中使用mongodb也正常,但是在scrapy项目中运行,会说导入失败,这是为什么?

import json
import pymongo
from scrapy.utils.project import get_project_settings


class MyscrapyPipeline(object):

    def __init__(self):
        settings = get_project_settings()
        client = pymongo.MongoClient(host=settings['MONGODB_HOST'], port=settings['MONGODB_PORT'])
        db = client[settings['MONGODB_DBNAME']]
        self.mongo = db[settings['MONGODB_COLNAME']['taptap']]

    def process_item(self, item, spider):
        """ 处理数据 """

        for k, v in item.items():
            item[k] = ''.join(v.split()) if bool(type(v) is not list) else v

        self.mongo.insert_one(json.dumps(dict(item), ensure_ascii=False))

        return item
阅读 9.4k
1 个回答

是不是用了某种集成开发编译器, 在你的scrapy项目开发环境中没有pymongo, 如果编译器是pycharm或是Spyder, 这篇问答也许可以帮你修改Python环境
https://segmentfault.com/q/10...

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题