Crontab没有名为Pandas的模块

2024-10-04 09:24:00 发布

您现在位置:Python中文网/ 问答频道 /正文

出于某种原因,Cron不会处理这个问题,并一直告诉我pandas没有安装(在我正常运行代码的时候都是这样)

我收到这封邮件:

  Subject: Cron <user@Justins-MBP-4> PYTHONPATH=/Users/user/Library/Python/3.6/lib/python/site-packages python  ~/downloads/random/milbtrans.command
X-Cron-Env: <SHELL=/bin/sh>
X-Cron-Env: <PATH=/usr/bin:/bin>
X-Cron-Env: <LOGNAME=user>
X-Cron-Env: <USER=user>
X-Cron-Env: <HOME=/Users/user>
Date: Tue,  8 May 2018 11:18:01 -0400 (EDT)

Traceback (most recent call last):
  File "/Users/user/downloads/random/milbtrans.command", line 2, in <module>
    import requests, csv, pandas, openpyxl, datetime, time
ImportError: No module named pandas

已将熊猫更改为已修复,但现在出现以下错误:

^{pr2}$

感谢任何帮助。在


Tags: 代码envpandasbindownloads邮件randomusers
1条回答
网友
1楼 · 发布于 2024-10-04 09:24:00

您还没有发布crontab,但我怀疑您没有使用到python3.6的正确路径。您的cron错误电子邮件显示cron使用的路径是/usr/bin和/bin。cron命令只调用“python”。所以cron将使用它的路径来尝试解析“python”。在

Python3.6的可执行文件或链接是否在这两个位置都可用?在

如果您从自己的登录名运行:$ /usr/bin/python$ /bin/python,您会看到什么?我猜其中一个,另一个,或者两者都会启动一个不同版本的Python(即python2.x.x)

  1. 找出python3的确切安装位置。示例(您的结果可能不同):

$ which python3 /usr/local/bin/python3

  1. 在python中使用绝对路径和cron指定绝对路径。在

crontab公司

0 0 * * * /usr/local/bin/python3 /Users/user/downloads/random/milbtrans.command

我建议你先这样试一下,不要用Python。在

您还可以更优雅地管理cron执行上下文的环境变量(即通过crontab本身或“wrapper”shell脚本导出正确的PATH环境变量),这也可以解决问题,但基于您在这里所分享的内容,我相信这是解决当前问题的最简单方法。在

相关问题 更多 >