没有名为“ email.FeedParser”的模块

时间:2019-02-04 14:47:51

标签: python-3.x amazon-web-services aws-lambda

我正在尝试在AWS Lambda上运行代码,但它向我返回错误:“无法导入模块'main':没有名为'email.FeedParser'的模块”。

我的代码未使用电子邮件feedparser模块或功能。只需连接到一个Google API并下载CSV报告即可。

我已经检查了代码范围,该模块的参考由httplib2库以及python标准库中的email / parser.py完成。

所有必需的库在requirements.txt文件中已完全更新。该代码还由samTemplate.yaml文件配置为在aws的python 3.7环境中执行。

你们以前遇到过这个问题吗?我该怎么解决?

谢谢!

import httplib2
from googleapiclient import discovery
from oauth2client.client import flow_from_clientsecrets
from oauth2client.file import Storage
from oauth2client.tools import run_flow
from urllib.parse import urlencode
import requests
import json
import time as t
import pandas as pd
from datetime import datetime, timedelta
from calendar import monthrange
from dateutil.relativedelta import relativedelta

2 个答案:

答案 0 :(得分:0)

我遇到了完全相同的问题...

我这样做了:

  1.   

    vim〜/ .pydistutils.cfg

    [安装]

    prefix =

请参阅此处:24257803,以获取有关此步骤的更多信息

  1.   

    rm -rf [dependencies_dir]

  2.   

    pip3 install -r requirements.txt --target [dependencies_dir]

Pip3会将依赖项安装到Python3,而pip则安装​​到Python2(其中某些软件包不存在)。因此,通过无服务器部署到Lambda时,不包括这些软件包。

答案 1 :(得分:0)

我必须确保pip3实际上安装在python3而非python2上。 代替:

pip3 install <package>

我必须做:

python3.8 -m pip install <package>

在此处查看答案:Why pip3 install in python2 sitepackages