首页 > 解决方案 > ScrapingHub:没有名为 Mysql.connector 的模块

问题描述

在我的本地机器上一切正常,但是当我在 ScrapingHub 上部署它时,我得到一个错误,说所有“ImportError:没有名为 mysql.connector 的模块”。

我所需要的只是,每当我运行我的蜘蛛程序或运行作业计划时,它都会自动通过我的数据库添加所有抓取的项目。

如果我没有选择解决这个问题,我也会尝试使用 item API

请帮忙谢谢!

标签: pythonmysqlscrapyscrapinghub

解决方案


您需要安装 MySQL 客户端库以允许您的代码与 MySQL 服务器通信。我建议您创建一个requirements.txt文件,以便在 ScrapyCloud 上安装所需的依赖项。

您应该requirements.txt使用以下内容在项目的基础目录上创建您的:

mysql-connector

然后你的 scrapinghub.yml 文件:

projects:
  default: 12345
requirements:
  file: requirements.txt

注意:如果此文件不存在,您可能需要运行shub deploy一次才能生成它。

您可以在此链接上获取有关如何在 SC 上安装依赖项的更多信息 https://support.scrapinghub.com/support/solutions/articles/22000200400-deploying-python-dependencies-for-your-projects-in-scrapy-cloud

请务必注意,您必须将配置指向正在运行的 MySQL 服务器,因为 SC 上没有运行 MySQL 服务器。


推荐阅读