运行时错误 - web.config
Runtime Error - web.config
我使用 flask 创建了一个网站,它接收一个字符串,根据该字符串创建一个 url,解析 url,然后将其反馈回网站。我创建了一个函数来执行此操作,并且效果很好。然而,当我在我的烧瓶程序中实现它时,它开始抛出一个运行时错误,指出:
服务器出现应用程序错误。此应用程序的当前自定义错误设置阻止远程查看应用程序错误的详细信息(出于安全原因)。但是,它可以通过本地服务器计算机上的浏览器 运行 查看。
Details:To 使此特定错误消息的详细信息能够在远程计算机上查看,请在位于当前 Web 应用程序根目录的 "web.config" 配置文件中创建一个 customErrors 标记。然后,此 customErrors 标记应将其 "mode" 属性设置为 "Off".
我不熟悉创建 web.config 或如何在我的烧瓶程序中实现它。任何帮助,将不胜感激。
代码:
当 运行 独立时有效的函数:
def parse_wotc():
set_list = []
# Manually enter in value for test
card_url = 'http://gatherer.wizards.com/Pages/Card/Details.aspx?name=' +
'mountain' # (replace mountain) card_name.replace(' ', '+')
soup = BeautifulSoup(requests.get(card_url).text, 'html.parser')
for image in soup.find_all('img'):
if image.get('title') is not None:
set_list.append(image.get('title'))
print(set_list)
return set_list
网络应用程序代码:
@app.route('/', methods=['GET', 'POST'])
def index():
card_name = None
card_url = '/static/images/card_back.jpg'
if request.form.get('random_button'):
card_url, card_name = random_card_image(list_card_names)
# When function ran here it give the error
parse_wotc(card_name)
def random_card_image(list_card_names):
"""This function will pull a random card name from the provided list and
return to main program"""
card_name = random.choice(list_card_names)
card_url = 'http://gatherer.wizards.com/Handlers/Image.ashx?name=' +
card_name.replace(' ', '+').lower() + \
'&type=card'
return card_url, card_name
花了几个小时才确定问题出在哪里,但现在可以解决了。问题是我制作了一个文本文件,其中包含我从中提取的卡片名称列表以创建随机选择 - 但是该文本文件在每个条目上都包含一个尾随 \n 。因此,它正在创建一个 url 其中包含 \n ,这在当时并不明显并导致错误。我在创建名称列表时使用了 rsplit() 来删除尾随的 \n,现在它工作得很好。
我使用 flask 创建了一个网站,它接收一个字符串,根据该字符串创建一个 url,解析 url,然后将其反馈回网站。我创建了一个函数来执行此操作,并且效果很好。然而,当我在我的烧瓶程序中实现它时,它开始抛出一个运行时错误,指出:
服务器出现应用程序错误。此应用程序的当前自定义错误设置阻止远程查看应用程序错误的详细信息(出于安全原因)。但是,它可以通过本地服务器计算机上的浏览器 运行 查看。 Details:To 使此特定错误消息的详细信息能够在远程计算机上查看,请在位于当前 Web 应用程序根目录的 "web.config" 配置文件中创建一个 customErrors 标记。然后,此 customErrors 标记应将其 "mode" 属性设置为 "Off".
我不熟悉创建 web.config 或如何在我的烧瓶程序中实现它。任何帮助,将不胜感激。
代码:
当 运行 独立时有效的函数:
def parse_wotc():
set_list = []
# Manually enter in value for test
card_url = 'http://gatherer.wizards.com/Pages/Card/Details.aspx?name=' +
'mountain' # (replace mountain) card_name.replace(' ', '+')
soup = BeautifulSoup(requests.get(card_url).text, 'html.parser')
for image in soup.find_all('img'):
if image.get('title') is not None:
set_list.append(image.get('title'))
print(set_list)
return set_list
网络应用程序代码:
@app.route('/', methods=['GET', 'POST'])
def index():
card_name = None
card_url = '/static/images/card_back.jpg'
if request.form.get('random_button'):
card_url, card_name = random_card_image(list_card_names)
# When function ran here it give the error
parse_wotc(card_name)
def random_card_image(list_card_names):
"""This function will pull a random card name from the provided list and
return to main program"""
card_name = random.choice(list_card_names)
card_url = 'http://gatherer.wizards.com/Handlers/Image.ashx?name=' +
card_name.replace(' ', '+').lower() + \
'&type=card'
return card_url, card_name
花了几个小时才确定问题出在哪里,但现在可以解决了。问题是我制作了一个文本文件,其中包含我从中提取的卡片名称列表以创建随机选择 - 但是该文本文件在每个条目上都包含一个尾随 \n 。因此,它正在创建一个 url 其中包含 \n ,这在当时并不明显并导致错误。我在创建名称列表时使用了 rsplit() 来删除尾随的 \n,现在它工作得很好。