Flyscrape是一个用 Go 编写的开源网络抓取工具。它允许使用 JavaScript 脚本从网站中提取结构化数据。Flyscrape 专为速度、灵活性和简单性而设计。
特点:
- 它作为独立的二进制文件运行,专注于数据提取而不是请求处理。
- 主要功能包括可配置选项、脚本能力、简单的 API、快速迭代、请求缓存和无依赖性。
- 结合了 Go 的速度和 JavaScript 的灵活性。— 专注于数据提取而不是请求杂耍。
功能:
- 高度可配置: 10 个选项可用于微调您的抓取工具。
- 独立: flyscrape 作为单个二进制可执行文件出现。
- 可编写脚本:使用 JavaScript 编写数据提取逻辑。
- 简单的 API:使用熟悉的 API 从 HTML 页面提取数据。
- 快速迭代:利用开发模式获得快速反馈。
- 请求缓存:在您已经抓取的网站上重新运行脚本。
- 零依赖:无需用 npm 包填满磁盘。
export const config = { url: "https://news.ycombinator.com/", }
export default function ({ doc, absoluteURL }) { const title = doc.find("title"); const posts = doc.find(".athing");
return { title: title.text(), posts: posts.map((post) => { const link = post.find(".titleline > a");
return { title: link.text(), url: link.attr("href"), }; }), } }
$ flyscrape run hackernews.js [ { "url": "https://news.ycombinator.com/", "data": { "title": "Hacker News", "posts": [ { "title": "Show HN: flyscrape - An standalone and scriptable web scraper", "url": "https://flyscrape.com/" }, ... ] } } ]
|
flyscrape适用于 MacOS、Linux 和 Windows,可从发布页面下载二进制文件。