我正在使用EFS為Lambda存儲python個包,并且我已經運行了這個簡單的代碼來檢查站點的連接
import json
import sys
sys.path.append("/mnt/access")
import requests
from bs4 import BeautifulSoup
def lambda_handler(event, context):
url = "http://www.wordhippo.com/what-is/another-word-for/credit"
print(url)
page = requests.get(url)
# soup = BeautifulSoup(page.content, 'html.parser')
print(page)
這是CloudWatch日志
[錯誤]ConnectionError:HTTPSConnectionPool(host='www.wordhippo.com',端口=443):url:/what-is/another-word-for/credit.html超過了最大重試次數(由NewConnectionError(‘<urllib3.connection.HTTPSConnection對象在0x7eff5fa618e0>:無法建立新連接:[Errno 110]連接超時’)回溯(上次調用):文件"/var/task/lambda_function.py",第126行,在lambda_handler頁=requests.get(url)文件{22},行73,在get返回請求(“get”,url,params=params,**kwargs)文件"/mnt/access/requests/api.py",第59行,在請求返回session.request(method=method,url=url,**KWRGS)文件"/mnt/access/requests/sessions.py,第587行,在resp=self.send(prep,**send_kwargs文件"/mnt/access/requests/sessions.py中,第701行,在send r=adapter.send(request,**kwargs)文件"/mnt/access/requests/adapters.py",第565行,在發送-提升連接錯誤(e,請求=請求)
專有網絡中的Lambda功能如果位于公共子網中,則無法訪問互聯網。默認情況下,專有網絡只有公共子網。
使您的功能能夠通過互聯網訪問的最簡單方法就是不將其置于專有網絡中。