gpt4 book ai didi

python - 找不到具有您请求的功能的树构建器 : html. 解析器。您需要安装解析器库吗?

转载 作者:行者123 更新时间:2023-11-28 17:07:56 24 4
gpt4 key购买 nike

我正在为 AWS 上的 lambda 开发一些代码。

# import libraries
import urllib.request as urllib2
from Packages.bs4 import BeautifulSoup
import time
import Packages.requests as requests
import json

def run(event, context):

try:

# specify the url
quote_page = 'http://money.cnn.com/data/hotstocks/index.html';

page = urllib2.urlopen(quote_page)
soup = BeautifulSoup(page, 'html.parser')

tickers = soup.find_all('a', attrs={'class':'wsod_symbol'})

# api end point http://127.0.0.1:8000/api/TopStock/

for i in range(13,23):

url = 'http://127.0.0.1:8000/api/TopStock/'

headers = {'Content-Type': 'application/json'}

data = {
"ticker": tickers[i].text,
"date": str(time.strftime("%Y-%m-%d"))
}
response = requests.post(url, data=json.dumps(data), headers=headers)

print(response.text)

print( data )

return dict(statusCode=200, body='working')
except Exception as e:
return dict(statusCode=500, body=str(e))

print(run(0,0))

它在我由 anaconda 管理的环境中运行良好。

from bs4 import BeautifulSoup

我已经导出包并在项目中运行它

from Packages.bs4 import BeautifulSoup

但是我遇到了这个问题

Couldn't find a tree builder with the features you requested: html.parser. Do you need to install a parser library?

我试过了

  • pip install --upgrade lxml
  • brew 安装 libxslt1-dev libxml2 python-dev

无法让它工作:(

running python 3.5

最佳答案

我在为 Lambda 开发代码时也遇到了这个问题。我正在使用部署包,因此我的项目目录如下所示: my Lambda function

vendors/bs4/builder/__init__.py 有一个硬编码引用 this_module = sys.modules['bs4.builder']

  1. 我将其更改为 this_module = sys.modules['vendors.bs4.builder']其中 vendors 是我的第 3 方包目录的名称
  2. 我还在 vendors. 前面添加了 bs4 导入 bs4/builder/_htmlparser。如果您使用不同的解析器,如 lxmlhtml5lib
  3. ,请注意更改导入

如果你使用类似 Apex 的东西您可以将这两个命令添加到 function.json 中的构建 Hook 中,以自动执行上述步骤。

  • sed -i -e 's/bs4.builder/vendors.bs4.builder/g'
    ./vendors/bs4/builder/__init__.py
  • sed -i -e 's/bs4./vendors.bs4./g' ./vendors/bs4/builder/_htmlparser.py

关于python - 找不到具有您请求的功能的树构建器 : html. 解析器。您需要安装解析器库吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49832133/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com