Skip to content

wls772/HelloWorld

Repository files navigation

新浪财经新闻插件

这是一个用于扣子(Coze)平台的新浪财经新闻爬取插件,可以根据股票代码查询相关的新浪财经新闻。

功能特点

  • 📰 根据股票代码查询新浪财经新闻
  • 🔍 支持上海(sh)和深圳(sz)股票代码
  • 📊 可自定义返回新闻数量(1-20条)
  • 🚀 提供GET和POST两种请求方式
  • ✅ 完整的错误处理和参数验证

安装和运行

1. 安装依赖

pip install -r requirements.txt

2. 运行服务

python sina_news_plugin.py

或者使用uvicorn:

uvicorn sina_news_plugin:app --host 0.0.0.0 --port 8000

服务将在 http://localhost:8000 启动。

API接口说明

1. 获取插件信息

GET /

返回插件的基本信息。

2. 健康检查

GET /health

检查服务是否正常运行。

3. 获取新闻(POST方式)

POST /news

请求体:

{
  "symbol": "sh600000",
  "limit": 5
}

参数说明:

  • symbol (必填): 股票代码,格式:sh600000(上海)或sz000001(深圳)
  • limit (可选): 返回新闻数量,默认5条,最大20条

响应示例:

{
  "symbol": "sh600000",
  "news_count": 5,
  "articles": [
    {
      "title": "某公司发布重要公告",
      "url": "https://vip.stock.finance.sina.com.cn/...",
      "date": "2024-01-15"
    }
  ]
}

4. 获取新闻(GET方式)

GET /news?symbol=sh600000&limit=5

参数说明:

  • symbol (必填): 股票代码
  • limit (可选): 返回新闻数量

在扣子平台中使用

1. 部署服务

将服务部署到可公网访问的服务器上(如云服务器、Vercel、Railway等)。

2. 更新OpenAPI配置

修改 openapi.yaml 文件中的 servers 部分,将URL替换为你的实际部署地址:

servers:
  - url: https://your-domain.com
    description: 生产服务器

3. 在扣子平台添加插件

  1. 登录扣子平台
  2. 进入插件管理页面
  3. 选择"创建插件" -> "OpenAPI插件"
  4. 上传 openapi.yaml 文件或输入OpenAPI URL
  5. 配置插件信息:
    • 插件名称:新浪财经新闻
    • 插件描述:爬取新浪财经新闻
    • API地址:你的服务地址
  6. 保存并测试

4. 使用插件

在扣子对话中,可以这样使用:

查询股票代码sh600000的最新5条新闻

或者:

获取sz000001的财经新闻,返回10条

股票代码格式

  • 上海股票sh + 6位数字,例如 sh600000
  • 深圳股票sz + 6位数字,例如 sz000001

注意事项

  1. 请确保服务可以访问新浪财经网站
  2. 建议添加适当的请求频率限制,避免被封IP
  3. 新浪财经网站结构可能会变化,如遇到问题请及时更新解析逻辑
  4. 生产环境建议使用HTTPS

错误处理

插件会返回以下错误码:

  • 400: 请求参数错误(如股票代码格式不正确)
  • 404: 未找到相关新闻
  • 500: 服务器内部错误(如网络请求失败、解析失败等)

开发说明

  • 使用 FastAPI 框架构建
  • 使用 BeautifulSoup 解析HTML
  • 支持异步请求(可扩展)
  • 完整的类型提示和文档字符串

许可证

MIT License

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages