You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Streamlit无法显示终端输出URL的问题求助

问题分析与修复方案

核心问题点

  1. 函数定义错误:get_founder函数使用了self参数,但从调用方式来看,若startup_info不是类实例,会直接报错;若是类方法,代码中未体现对应类的定义,逻辑矛盾。
  2. 循环逻辑失效:循环内的if result in result.lower()条件无实际意义,且无论条件是否成立都会立即return,导致循环仅执行一次就终止,无法遍历所有搜索结果。
  3. 变量未定义:代码中startups和startup_info变量未给出定义,会引发运行时错误。

修复后的代码示例

from googlesearch import search
import streamlit as st

# 修正:改为普通函数,移除不必要的self参数
def get_founder(startup_name):
    query = f"founder of {startup_name}?"
    search_results = list(search(query))
    
    # 修正:返回第一个搜索结果(无结果则返回提示)
    if search_results:
        return search_results[0]
    return "Founder name not found"

# 补充:定义目标创业公司名称(可替换为实际输入)
startups = "目标创业公司名称"
# 修正:直接调用函数
founder = get_founder(startups)

# Streamlit输出内容
st.write(founder)

额外优化建议

  • 若需要筛选更精准的结果,可在循环中添加关键词判断:
def get_founder(startup_name):
    query = f"founder of {startup_name}?"
    search_results = list(search(query))
    
    for result in search_results:
        # 筛选包含创始人相关关键词的结果
        if any(keyword in result.lower() for keyword in ["founder", "ceo", "founders"]):
            return result
    return "Founder name not found"
  • 可通过Streamlit输入组件获取用户输入,提升交互性:
startups = st.text_input("请输入创业公司名称")
if startups:
    founder = get_founder(startups)
    st.write(founder)

内容的提问来源于stack exchange,提问作者Korak RoyGhatak

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 04:43:24