四个 Kaggle 抓取工具。每个都返回干净的 JSON。
四个 Kaggle 抓取工具,实时输入。kaggle-dataset-serp 读取数据集搜索页面,kaggle-dataset 拉取带文件和许可证的单个数据集,kaggle-notebook-serp 读取笔记本列表,kaggle-notebook 返回带统计数据和输入的单个笔记本。切换标签,或悬停以暂停并阅读。
一个 API,覆盖 Kaggle 的每个角落。
四个专用抓取工具覆盖重要的页面:数据集搜索、单个数据集、笔记本搜索和单个笔记本。Crawling API 在真实浏览器中渲染每个页面,通过住宅 IP 访问,并交付干净的 HTML 或 JSON。
每个数据集列表
kaggle-dataset-serp 将数据集搜索页面转换为 JSON:totalCount、page 和 hasNextPage,外加每张卡片的排位、标题、slug、所有者、可用性评分、文件数量和格式、大小、下载量、笔记本数量、投票和奖牌。
完整的数据集元数据
kaggle-dataset 返回单个数据集,带有其标题、副标题、Markdown 描述、版本、关键词、所有者、许可证、带格式和字节大小的文件列表,以及其下载、浏览、投票和评论计数。
笔记本列表
kaggle-notebook-serp 返回笔记本搜索页面,每一行都带有其排位、标题、slug、作者和合著者、最后更新时间、评论数、竞赛或数据集背景、投票和奖牌。
单个笔记本
添加 scraper=kaggle-notebook 即可返回一个笔记本,带有其作者、语言、运行时、版本历史、浏览、投票、复制、评论、奖牌、许可证和输入。
1.4 亿住宅 IP
每个请求都会在 30 个地区轮换一个住宅 IP,并自动清除机器人检查。无需求解,无需维护。
每个数据集字段,都是干净的 JSON。
发送一个数据集 URL 并附上 scraper=kaggle-dataset 数据集就会以类型化 JSON 返回,包含文件和许可证。换成 kaggle-dataset-serp、kaggle-notebook-serp 或 kaggle-notebook 即可获取列表和笔记本。
数据集
url · string id · string title · string subtitle · string
所有者与许可证
owner.name · string owner.url · string license.name · string license.url · string
文件
files[].format · string files[].sizeBytes · number files[].downloadUrl · string files[].requiresSubscription · boolean
互动数据
downloads · number views · number votes · number commentCount · number
元数据
description · string keywords · array lastUpdated · string isAccessibleForFree · boolean
一个调用,从 URL 到数据。
每个 Kaggle 请求都走同一条路径。你发送一个 URL,我们运营其间的一切。
发送 URL
用你的令牌传入任意公开的 Kaggle URL:数据集搜索页面、数据集、笔记本列表或单个笔记本。
轮换代理
从 30 个地区的 1.4 亿 IP 中,选取能干净访问站点的住宅 IP 和地区。
渲染页面
真实浏览器加载页面,使得搜索结果、数据集卡片和笔记本侧边栏在捕获前完成渲染。
清除反爬
站点的机器人检查和限流都会自动处理。无需求解,无需维护。
返回 HTML 或 JSON
返回完整渲染的 HTML,或在你添加 kaggle-dataset-serp、kaggle-dataset、kaggle-notebook-serp 或 kaggle-notebook 时返回类型化 JSON。
团队用 Kaggle 数据构建什么。
数据集发现
按关键词和页码遍历数据集搜索页面,构建可搜索的索引,了解有哪些数据集、归谁所有、以何种许可证发布。
数据目录同步
将数据集标题、副标题、描述、关键词、版本、文件格式和字节大小镜像到内部目录,并保持更新。
许可证与访问检查
在数据集进入管道之前,读取许可证名称和 URL、isAccessibleForFree 以及每个文件的 requiresSubscription 标志。
笔记本与方法研究
收集笔记本列表和单个笔记本,了解社区实际使用哪些语言、运行时和竞赛背景。
热度跟踪
随时间跟踪下载、浏览、投票、复制和评论数,看清哪些数据集和笔记本正在走热。
任意 URL,一个 API
抓取数据集搜索、数据集、笔记本搜索和单个笔记本,外加你需要的任何其他站点。
抓取 Kaggle 时需要了解的要点。
默认 HTML,按需 JSON
你会得到完整渲染的 HTML。添加 scraper=kaggle-dataset-serp、kaggle-dataset、kaggle-notebook-serp 或 kaggle-notebook 获取已解析的 JSON,或自行解析 HTML。
笔记本列表返回的是标签,不是数量
Kaggle 在笔记本列表上只渲染 Results (100+),因此 totalCountLabel 会原样返回该字符串,而不是编造一个数字。数据集列表则确实提供真实的数值 totalCount。
笔记本正文位于 iframe 中
已执行的笔记本由 iframe 内的独立来源提供,因此不属于页面文档的一部分。contentUrl 指向该框架并带有短期有效的签名令牌,请在抓取后尽快获取。
列表统计按显示形式返回
在数据集卡片上,size 是 Kaggle 连同单位一起显示的字符串,例如 6 kB,而缩写的下载量会被还原为普通整数,因此 362K 会以 362000 返回。
为大规模抓取 Kaggle 而生。
Crawling API 运行在同一张网络上,为超过 46,000 名付费客户和 70,000 名开发者提供服务。无需购买代理,无需运行浏览器,站点变更时也无需打补丁。
一个令牌,面向 Python、Node 和 Ruby 的官方 SDK,底层是 99.99% 可用性的网络。