读
网页和文件输入,文本输出。没有数据库,没有帐户,没有业务规则:一个库
获取和读取。在0.29.0之前,这是falcon(文件、标记、媒体)以及fetch和video
织布者的一半;上面的搜索引擎是 @wrenautomation/birdwatch,
谁的 birdwatch CLI携带这些读取器(fetch, read, list, text, page, watch)。
| 进口 | 做 |
|---|---|
@wrenautomation/read/fetch | PoliteFetcher (每个主机一次一个请求,User-Agent中的一个联系人,重试429和5xx,一个字节上限), robots 在警告模式下, fetchLadder (通过一个 LadderClient: autobrowse web GET /fetch) |
@wrenautomation/read/text | htmlText, pdfText, decodeHtml, decodeEntities; readPage (HTML到标题,文本,链接,邮件,电话) |
@wrenautomation/read/video | watchFile 一个视频文件:ffmpeg剪辑和帧,一个耳朵的演讲(cohereSpeech),对框架的眼睛(cohereEye),以及给定时视频模型读取整个文件(geminiVideo,或者 geminiReader 没有密钥检查(对于持有密钥的代理);标签。通过URL: readYoutube (由yt-dlp提供的字幕和章节,以及视频模型在剪辑中读取的屏幕), readYoutubeByUrl (仅视频模型,无需下载), readVideo (还有其他视频吗:y -dlp watchFile), readAudio (那么,一个播客的音频URL hearAudio), watch 通过一个URL或一个文件 flatPlaylist (个人资料、频道或搜索的内容), download。每个读者都会返回1 VideoRead 形状 |
@wrenautomation/read/study | 一个研究的综合阅读器:引门(pageQuoted, numbersQuoted),每页显示的段落,引用声明的草稿,降价报告 |
一切都是你传递的内容的函数:URL、字节、文本、文件路径、模型、工具。什么
搜索,存储,安排或知道客户属于呼叫者。每个模型呼叫
通过 @wrenautomation/models. watch URL上的阅读器需要ffmpeg和yt-dlp。
import { PoliteFetcher, userAgent } from "@wrenautomation/read/fetch";
import { readPage } from "@wrenautomation/read/text";
const fetcher = new PoliteFetcher(userAgent("[email protected]"));
const res = await fetcher.get(url);
const page = readPage(res.text, res.url);
开发
pnpm install
pnpm lint && pnpm typecheck && pnpm test
一、 v* 标签向NPM发布(.github/workflows/release.yml可信发布:不存储令牌)。
许可证:PolyForm Strict 1.0.0 (LICENSE.md)。