goodreads-books
收藏资源简介:
Goodreads Books Metadata 是一个从Goodreads(社交阅读和推荐平台)直接抓取的结构化图书记录数据集,收集于2026年7月。该数据集旨在支持对集体阅读偏好、评分动态和图书流行模式的研究,包含丰富的元数据,涵盖书目信息(如标题、第一作者、出版日期、出版商、语言、页数、格式、系列)、众包评分(平均评分、评论数)、读者参与度信号(当前在读人数、想读人数)、作者级别统计(作品数量、粉丝数)以及描述文本和体裁标签。数据集规模约为数万条记录,存储为约381个Parquet分区文件,总计约28 MB。主要字段包括:book_id(图书ID)、url(页面URL)、title(标题)、first_author(第一作者)、average_rating(平均评分,1.0-5.0)、num_reviews(评论数)、first_published(首次出版日期)、publisher(出版商)、language_code(语言代码)、num_pages(页数)、description(描述文本)、genres(体裁列表)、format(格式)、series(系列)、num_currently_reading(当前在读人数)、num_want_to_read(想读人数)、first_author_num_books(第一作者作品数)、first_author_num_followers(第一作者粉丝数)等。该数据集适用于多种任务,包括:图书评分预测、体裁分类、流行度分析、作者影响力分析以及阅读行为分析。数据来源于公开的Goodreads图书页面,不包含用户身份信息。需要注意的是,数据是特定时间点的快照,可能存在解析不完整、语言偏差(主要为英语)、仅包含第一作者信息等局限性。数据集仅供研究和教育用途,使用者需遵守Goodreads的服务条款。
Goodreads Books Metadata is a structured book record dataset directly scraped from Goodreads (a social reading and recommendation platform), collected in July 2026. This dataset aims to support research on collective reading preferences, rating dynamics, and book popularity patterns. It contains rich metadata covering bibliographic information (such as title, first author, publication date, publisher, language, page count, format, series), crowdsourced ratings (average rating, number of reviews), reader engagement signals (number of people currently reading, number of people wanting to read), author-level statistics (number of works, number of followers), as well as description text and genre tags. The dataset scale is approximately tens of thousands of records, stored in about 381 Parquet partition files, totaling about 28 MB. Key fields include: book_id (book ID), url (page URL), title (title), first_author (first author), average_rating (average rating, 1.0-5.0), num_reviews (number of reviews), first_published (first publication date), publisher (publisher), language_code (language code), num_pages (page count), description (description text), genres (genre list), format (format), series (series), num_currently_reading (number of people currently reading), num_want_to_read (number of people wanting to read), first_author_num_books (first authors number of books), first_author_num_followers (first authors number of followers), etc. This dataset is suitable for various tasks, including: book rating prediction, genre classification, popularity analysis, author influence analysis, and reading behavior analysis. The data comes from publicly available Goodreads book pages and does not contain user identity information. It should be noted that the data is a snapshot at a specific point in time and may have limitations such as incomplete parsing, language bias (primarily English), and inclusion of only first author information. The dataset is for research and educational purposes only, and users must comply with Goodreads terms of service.
数据集概述:Goodreads Books Metadata
这是一个从 Goodreads 平台抓取的结构化图书元数据集,旨在用于图书评级、流行度分析和阅读行为画像等研究。
基本信息
- 数据集名称: Goodreads Books Metadata
- 维护者: pfaha (Hugging Face个人主页)
- 许可证: 其他 (非标准,用于研究和教育目的)
- 语言: 英语 (en)
- 数据规模: 10K < n < 100K (约 38,100 条记录)
- 任务类别: 表格回归 (tabular-regression)
- 标签: goodreads, books, social-network, reading-behavior
- 来源: 原始 (original),数据直接源于 Goodreads。
- 主页: https://www.goodreads.com
数据收集
- 来源: Goodreads 图书页面,通过 Python 爬虫 (
book_scraper.py) 于 2026年7月 采集。 - 存储格式: Parquet 格式,按文件分片存储(每个文件约100条,共约381个部分文件)。
- 存储大小: 约 28 MB。
- 采集策略:
- 基于预设的 Goodreads 图书ID 列表进行抓取。
- 优先解析页面中的
__NEXT_DATA__JSON 数据,其次是application/ld+json,最后才使用正则表达式提取。 - 同时抓取第一作者的 Goodreads 主页,以丰富作者数据。
- 实行礼貌爬取策略:基础延迟2秒,外加随机抖动,遇到429或523错误时进行指数退避,最长等待60秒。
- 具备断点续传和容错机制。
数据内容与结构
特征字段
| 列名 | 类型 | 描述 |
|---|---|---|
book_id |
int64 | Goodreads 图书数字ID |
url |
string | 图书在 Goodreads 上的完整URL |
title |
string | 图书标题(小写化) |
first_author |
string | 第一作者姓名 |
first_author_url |
string | 第一作者 Goodreads 个人主页URL |
first_author_num_books |
int64 | 该作者的作品数量(高产度代理) |
first_author_num_followers |
int64 | 该作者的粉丝数(流行度代理) |
average_rating |
float64 | 用户平均评分(1.0 - 5.0) |
num_reviews |
int64 | 用户提交的文本评论总数 |
first_published |
string | 首次出版日期字符串(如 "July 16, 2005") |
publisher |
string | 出版社名称 |
language_code |
string | 版本语言(如 "english") |
num_pages |
int64 | 页数 |
description |
string | 完整的图书描述文本(小写化并清理) |
genres |
string | 逗号分隔的流派标签列表(如 "fiction, fantasy") |
format |
string | 版本装帧格式(如 "paperback", "hardcover") |
series |
string | 所属系列名称 |
num_currently_reading |
int64 | 标记为“正在阅读”的用户数 |
num_want_to_read |
int64 | 标记为“想读”的用户数 |
数据划分
数据集没有预定义的训练/验证/测试集划分。所有记录作为一个整体集合存储。
支持的任务与应用
- 图书评分预测: 基于其它特征预测图书的
average_rating。 - 流派分类: 利用图书描述 (
description) 等元数据进行流派分类。 - 流行度分析: 通过读者参与度指标(
num_want_to_read,num_currently_reading)对图书进行排名和比较。 - 作者影响力分析: 研究作者的粉丝数、作品数量与图书评分之间的关联。
- 阅读行为画像: 利用
num_currently_reading和num_want_to_read作为读者兴趣分布的代理指标。
使用注意事项
- 数据时效性: 数据是 2026年7月 的快照,部分信息(如粉丝数、评论数)会随时间变化。数据集只包含了 Goodreads 数据库中前40000本书的数据,并非全部。
- 解析覆盖: 由于采用降级解析策略,部分字段可能为
null或0。 - 语言偏差: 虽然包含语言代码,但大多数记录为英语图书。
- 作者局限: 只丰富了第一作者的信息,未捕获合著者。
- 缺失原始评分分布: 数据集仅包含平均评分,不含1星到5星的具体数量。
- 许可证与合规: 数据集仅供研究和教育目的使用。用户有责任遵守 Goodreads 的服务条款,并禁止用于商业用途。
引用信息
如果您在研究中使用了此数据集,请按以下格式引用:
@dataset{pfaha_goodreads_books_2026, author = {pfaha}, title = {Goodreads Books Metadata}, year = {2026}, month = {July}, publisher = {Hugging Face}, url = {https://huggingface.co/datasets/pfaha/goodreads-books} }




