paidcrawer-tasks
v0.2.0
Published
投研任务 CLI:飞书(哈勃小助手)登录后,创建 onetimeCompany/trackCompany 抓取任务。登录一次、后续自动带用户身份。也可被 agent 作为库调用。
Readme
paidcrawer-tasks
投研任务 CLI / 库:飞书(哈勃信息小助手)登录后,创建 onetimeCompany(一次性抓取)/ trackCompany(持续跟踪)任务。登录一次、后续调用自动带上你的用户身份(任务归因到你)。
只有拥有「哈勃信息小助手」应用权限(在其可用范围内)的飞书用户才能登录成功。
安装
npm i -g paidcrawer-tasks(无需任何密钥/配置:登录走飞书授权,app 密钥只在服务端。)
命令行使用
npm i -g paidcrawer-tasks
# 直接建任务即可——若尚未登录,会自动弹出飞书授权、登录成功后继续创建:
paidcrawer-tasks create --company-name=英伟达 --type=onetimeCompany
paidcrawer-tasks create --company-name=泛林 --type=trackCompany --stock-ticker="LRCX US"
# 其它命令:
paidcrawer-tasks help # 查看完整帮助(含两种类型区别、抓取来源范围)
paidcrawer-tasks login # 手动登录(create 未登录时会自动触发)
paidcrawer-tasks whoami # 当前登录用户
paidcrawer-tasks logout完整帮助(paidcrawer-tasks -h,与 CLI 输出保持一致)
命令:
login 飞书授权登录(create 未登录时会自动触发)
whoami 查看当前登录用户
create ... 创建抓取任务(见下)
logout 登出
help 显示本帮助
create 参数:
--company-name=<公司名> 必填。公司中文/英文名(如 英伟达、泛林)
--type=onetimeCompany|trackCompany 必填。见下方两种类型区别
--stock-ticker="LRCX US" 股票代码。trackCompany 必填;onetimeCompany 可选
--source=thirdBridge,alphapai,ciq 可选。只抓指定来源子集(可逗号多选);省略=全部三源
两种任务类型的区别:
onetimeCompany(一次性全量抓取)
· 免维护、不进增量池、不影响日常排程,跑完即止。
· 抓取来源 = 三个源:
- ThirdBridge:专家访谈纪要
- Alphapai:调研纪要
- CIQ Transcripts:会议逐字稿,含 Earnings Call(财报电话会)、
Company Conference Presentation(公司会议演示)、Investor Presentation / IP(投资者演示)三种体裁。
默认三源全抓;只想抓其中之一/若干,用 --source(如 --source=ciq 或 --source=thirdBridge,alphapai)。
· 适合:临时想把某公司的历史资料一次性拉全。
trackCompany(持续跟踪)
· 把公司注册进主表 + 源表,纳入增量抓取池——之后每个增量档自动持续跟进新内容。
· 附带一次首次回补(默认 30 篇),回补同样走上面三源。
· 上市公司须提供 --stock-ticker(否则拒绝建任务)。
· 适合:想长期盯住某公司、持续拿到最新研报/访谈/电话会。
示例:
paidcrawer-tasks create --company-name=英伟达 --type=onetimeCompany
paidcrawer-tasks create --company-name=英伟达 --type=onetimeCompany --source=ciq # 只抓 CIQ 逐字稿
paidcrawer-tasks create --company-name=英伟达 --type=onetimeCompany --source=thirdBridge,alphapai
paidcrawer-tasks create --company-name=泛林 --type=trackCompany --stock-ticker="LRCX US"onetimeCompany vs trackCompany
| | onetimeCompany(一次性全量) | trackCompany(持续跟踪) |
|---|---|---|
| 行为 | 跑完即止,免维护,不进增量池、不影响排程 | 注册进主表+源表纳入增量池,之后每档持续跟进;附一次首次回补(默认 30 篇) |
| 抓取来源 | ThirdBridge(专家访谈)+ Alphapai(调研纪要)+ CIQ Transcripts 三源;CIQ Transcripts 含 Earnings Call(财报电话会)/ Company Conference Presentation(公司会议演示)/ Investor Presentation·IP(投资者演示) 三种体裁 | 首次回补同样走上述三源,之后按增量档持续 |
| --stock-ticker | 可选 | 必填(上市公司) |
| 适合 | 临时把某公司历史资料一次性拉全 | 长期盯住某公司、持续拿最新内容 |
- 首次
create时若未登录,会自动进入登录流程,登录成功后自动完成创建;登录态失效也会自动重新登录后重试一次。 --company-name:公司名(落任务表「ticker」列)。--ticker为其 deprecated 同义别名(仍是"公司名",非股票代码)。--stock-ticker:股票代码(如"LRCX US"),落任务表「参数」列params.ticker。trackCompany必填(否则 CLI 直接报错,不建空参数任务);onetimeCompany 可不填。--type:onetimeCompany或trackCompany。--source:可选,抓取来源子集,取值thirdBridge/alphapai/ciq,可逗号多选(如--source=ciq、--source=thirdBridge,alphapai)。省略=默认全部三源。 trackCompany 也支持(限定首次回补/注册的来源)。- 当前仅支持以上参数;
--listed/--params等暂不支持(传了会报错、不创建任务)。
作为库(供 agent 调用)
const { createTask, whoami } = require('paidcrawer-tasks');
await createTask({ companyName: '英伟达', type: 'onetimeCompany' }); // onetime(三源)
await createTask({ companyName: '英伟达', type: 'onetimeCompany', source: 'ciq' }); // 只抓 CIQ;source 亦可传数组 ['thirdBridge','alphapai']
await createTask({ companyName: '泛林', type: 'trackCompany', stockTicker: 'LRCX US' }); // track(必带股票代码)
// 兼容旧写法:createTask({ ticker: '英伟达', type: 'onetimeCompany' })(ticker 即公司名)未登录时 createTask/whoami 会抛错(err.needLogin=true),提示先 paidcrawer-tasks login。
配置
- 后端地址默认
https://mcp.sourcecodecap.com/paidcrawer-tasks,可用环境变量PAIDCRAWER_TASKS_API覆盖。 - 登录凭证(短期 session)存于
~/.config/paidcrawer-tasks/session.json(权限 0600)。
说明
- 建任务实际调用飞书 Aily 技能,任务落到「任务表」并按你的 open_id 归因(
user_id+X-Aily-BizUserID)。 - 应用密钥(app_secret)只存在服务端,客户端与本包中均不含。
发布(维护者)
已发布到公共 npm:paidcrawer-tasks(当前 latest = 0.1.8)。发新版步骤:
cd paidcrawer-tasks/cli
# 1. bump 版本(同版本号会 409 冲突)
npm version patch # 或手改 package.json 的 version
# 2. 干跑确认打包内容(files 白名单:bin/ index.js README.md)
npm publish --dry-run
# 3. 正式发布
npm publish踩坑记录(2026-07):npm 现强制发布须满足「账号开 2FA 用 --otp」或「用带 Bypass two-factor authentication 的 granular token」之一,二者皆无则报 E403 … Two-factor authentication or granular access token with bypass 2fa enabled is required。本账号未开 2FA(--otp 无 TOTP 可校验,无效),故采用后者:
- npmjs.com → Access Tokens → Generate → Granular Access Token,勾 Bypass two-factor authentication;Permissions = Read and write;Packages =
paidcrawer-tasks(或 All)。 - token 写入
~/.npmrc://registry.npmjs.org/:_authToken=npm_xxx,之后npm publish直接可发。
