【问题标题】:How to use peewee with scrapinghub如何在 scrapinghub 中使用 peewee
【发布时间】:2017-04-15 08:40:40
【问题描述】:

我想使用 peewee 将我的数据保存到远程机器。当我运行我的爬虫时,我发现了以下错误,

File "/usr/local/lib/python2.7/site-packages/scrapy/commands/crawl.py", line 57, in run
    self.crawler_process.crawl(spname, **opts.spargs)
  File "/usr/local/lib/python2.7/site-packages/scrapy/crawler.py", line 163, in crawl
    return self._crawl(crawler, *args, **kwargs)
  File "/usr/local/lib/python2.7/site-packages/scrapy/crawler.py", line 167, in _crawl
    d = crawler.crawl(*args, **kwargs)
  File "/usr/local/lib/python2.7/site-packages/twisted/internet/defer.py", line 1445, in unwindGenerator
    return _inlineCallbacks(None, gen, Deferred())
--- <exception caught here> ---
  File "/usr/local/lib/python2.7/site-packages/twisted/internet/defer.py", line 1299, in _inlineCallbacks
    result = g.send(result)
  File "/usr/local/lib/python2.7/site-packages/scrapy/crawler.py", line 90, in crawl
    six.reraise(*exc_info)
  File "/usr/local/lib/python2.7/site-packages/scrapy/crawler.py", line 72, in crawl
    self.engine = self._create_engine()
  File "/usr/local/lib/python2.7/site-packages/scrapy/crawler.py", line 97, in _create_engine
    return ExecutionEngine(self, lambda _: self.stop())
  File "/usr/local/lib/python2.7/site-packages/scrapy/core/engine.py", line 70, in __init__
    self.scraper = Scraper(crawler)
  File "/usr/local/lib/python2.7/site-packages/scrapy/core/scraper.py", line 71, in __init__
    self.itemproc = itemproc_cls.from_crawler(crawler)
  File "/usr/local/lib/python2.7/site-packages/scrapy/middleware.py", line 58, in from_crawler
    return cls.from_settings(crawler.settings, crawler)
  File "/usr/local/lib/python2.7/site-packages/scrapy/middleware.py", line 34, in from_settings
    mwcls = load_object(clspath)
  File "/usr/local/lib/python2.7/site-packages/scrapy/utils/misc.py", line 44, in load_object
    mod = import_module(module)
  File "/usr/local/lib/python2.7/importlib/__init__.py", line 37, in import_module
    __import__(name)
  File "/app/__main__.egg/annuaire_agence_bio/pipelines.py", line 8, in <module>

exceptions.ImportError: No module named peewee

欢迎提出任何建议。

【问题讨论】:

    标签: python scrapy scrapinghub


    【解决方案1】:

    您不能在 Scrapinhub 上安装您自己选择的模块...据我所知,您只能安装 MySQLDB。

    在项目的主文件夹中创建一个名为scrapinghub.yml 的文件,内容如下。

    projects:
      default: 111149
    requirements:
      file: requirements.txt
    

    111149 是我在 scrapinghub 上的项目 ID。

    在同一目录中创建另一个名为 requirements.txt 的文件。

    并把你需要的模块和你正在使用的版本号一起放在那个文件中,像这样,

    MySQL-python==1.2.5
    

    PS:我使用的是 MySQLDB 模块,所以我把它放了。

    【讨论】:

    • 不知道我是否理解了第一句话。事实上,您可以在 Scrapinghub 上安装您选择的任何模块。
    • 只需将peewee添加到requirements.txt
    猜你喜欢
    • 2020-06-09
    • 2021-06-29
    • 2012-06-01
    • 2013-12-02
    • 2017-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-23
    相关资源
    最近更新 更多