python - ScrapingHub:没有名为 Mysql.connector 的模块
问题描述
在我的本地机器上一切正常,但是当我在 ScrapingHub 上部署它时,我得到一个错误,说所有“ImportError:没有名为 mysql.connector 的模块”。
我所需要的只是,每当我运行我的蜘蛛程序或运行作业计划时,它都会自动通过我的数据库添加所有抓取的项目。
如果我没有选择解决这个问题,我也会尝试使用 item API
请帮忙谢谢!
解决方案
您需要安装 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 服务器。
推荐阅读
- java - 如何获得多个数组中的最大值?
- python - 如何规范化包含不相关条目的列表
- r - rename_if() 与 starts_with() 一起为某些列添加前缀
- selenium - 为什么 UI 测试位于测试金字塔的顶端?
- if-statement - XML 或 Javascript 中的 IF ELSE 条件
- office-ui-fabric - 如何更改图标按钮的颜色?
- machine-learning - 我怎么知道要使用哪种类型的梯度下降?
- javascript - 如何在 Vue SFC 中使用外部模块?
- python - Pytorch:如何使用参考表创建自定义数据集
- antlr4 - 想要解析相同的结构