ParseForge Scrapers

viaLibri Books Scraper

parseforge/vialibri-scraper

Developer toolsAutomationOther

Scrape book listings from viaLibri by publication year or year range. Returns title, author, price, seller, and condition in a flat row.

Run this scraper See the API call
Total users
10
Monthly active
0
Total runs
225
Bookmarked
2
Rating
5.0 (1)
Last modified
12 days ago

Overview

ParseForge

viaLibri Books Scraper

Scrape book listings from viaLibri by publication year or year range, up to a million per run. Every listing comes with title, author, price, seller, and condition. No login or API key. Export to CSV, JSON, Excel, or XML.

viaLibri aggregates used, rare, and out-of-print books from hundreds of independent sellers worldwide, but browsing by publication year or year range is manual and slow. This scraper reads the public listings directly, filtered by a single year or a range, and returns each match in one fixed schema.

Who uses it What they scrape viaLibri for
Book collectors Find rare editions published in a specific year.
Librarians Locate out-of-print titles from a particular decade.
Antiquarian booksellers Monitor competitor listings for books from a given period.
Researchers Gather bibliographic data on publications from a historical year.

What it does

This Actor collects book listings from viaLibri by publication year or year range, and returns each one as a flat row.

  • ๐Ÿ“… Single year search: Enter one publication year (1455-2024) to collect all listings from that year.
  • ๐Ÿ“… Year range search: Enter a start and end year to collect listings across a span of years.
  • ๐Ÿ“Š Scalable output: Set a maximum item count up to 1,000,000 to control run size.

Results export to CSV, JSON, Excel, or XML, or straight from the API.

What you can do with viaLibri data

๐Ÿ“š Find rare first editions.

A collector runs the scraper for a specific year (e.g., 1925) to discover first editions of classic novels listed on viaLibri.

๐Ÿ“– Build a bibliography.

A researcher uses the year range filter (e.g., 1800-1850) to compile a dataset of all books published during a literary period.

๐Ÿ›’ Monitor market prices.

An antiquarian bookseller runs the scraper weekly for a target year to track price changes and new listings from competitors.

๐Ÿ“Š Analyze publication trends.

A data analyst collects listings from multiple decades to study the distribution of book prices and conditions over time.

Why choose this scraper

What you get
No login needed Access viaLibri listings without creating an account or API key.
Year-based filtering Target books from a specific year or range, not the entire catalog.
Flat row output Every listing is a clean row with title, author, price, seller, and condition.
Export flexibility Download results as CSV, JSON, Excel, or XML.

How it compares

No other Store actor targets viaLibri the same way, so the honest comparison is with the alternatives teams actually weigh.

viaLibri Books Scraper Build it in-house By hand
Setup Run it now, zero config Days of engineering None, but hours per pull
When viaLibri changes Maintained for you You fix it You re-learn the page
Proxies, retries, anti-bot Built in Your problem Browser only
Output Fixed JSON schema, CSV/Excel export Whatever you build Copy-paste
Cost Pay per result Engineering time Analyst hours

Configure the run

Drive the Actor from a single publication year or a year range, and the scraper reads only listings matching that filter so your dataset is focused. The Input tab lists every parameter.

A first run with the defaults:

{
  "maxItems": 10,
  "year": 1800
}

A larger pull:

{
  "maxItems": 200,
  "year": 1800
}

Pricing

Pay-per-result: $0.01599 per result collected. You pay only for the results written to your dataset.

Results collected Approximate cost
100 results $1.60
1,000 results $15.99
10,000 results $159.90

New Apify accounts start with $5 in free credit.

Free users

Free-plan runs return up to 10 results as a preview. Upgrade your Apify plan to collect up to 1,000,000 results per run.

Run it

  1. Create a free Apify account with $5 in credit.
  2. Open the viaLibri Books Scraper.
  3. Set your inputs and any filters, then click Start.
  4. Export the results as CSV, Excel, JSON, or XML from the Dataset tab.

Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python.

Use with AI agents (MCP)

Give an AI agent live access to viaLibri through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:

claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/vialibri-scraper"

Then prompt it in plain language to run the scraper and read back the results.

Troubleshooting

Why am I getting no results?

Check that the year or year range you entered is between 1455 and 2024. Also ensure you are not using both a single year and a range at the same time.

The run is taking too long.

Reduce the maximum items setting. The scraper reads listings sequentially, so a high limit can take time if many listings match your year filter.

The output fields are different from what I expected.

The exact fields depend on the listing data available on viaLibli. Run a small test with maxItems=5 to see the schema before a large run.

Can I scrape all books without a year filter?

No, the scraper requires either a single year or a year range. To get a broad sample, use a wide range like 1455-2024.

FAQ

Question Answer
What data does this scraper return? It returns book listings from viaLibri including title, author, price, seller, condition, and publication year. The exact fields are shown in the sample output after a run.
Can I search by both a single year and a range? No, you must use either a single year or a year range, not both. The input schema enforces this.
What years are supported? You can search for books published between 1455 and 2024.
Do I need an account or API key? No, the scraper reads public viaLibri listings directly without any authentication.
How many books can I collect per run? You can set a maximum of up to 1,000,000 books per run. The default is 10.
What export formats are available? You can export the results as CSV, JSON, Excel, or XML.
Is the data updated in real time? The scraper fetches the current listings at the time of the run. It does not cache or store historical data.
Can I filter by seller or price? No, the current version only filters by publication year or year range. All other filtering must be done after export.

Related actors

Browse the full ParseForge collection for more scrapers.

๐Ÿ†˜ Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.

โš ๏ธ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by viaLibri. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.

Input

FieldTypeWhat it doesDefault
maxItems integer How many books to collect per run. 10
year integer Collect books from a specific publication year (1455-2024). Use this OR year range, not both. 1800
yearFrom integer Start year for a range search. Must be used together with 'Year To'. not set
yearTo integer End year for a range search. Must be used together with 'Year From'. not set

Pricing

from $11.99 per 1,000 results

Charged forWhat it isPrice each
Actor Start Charged once when the run starts. $0.005
Result Item Charged once per result collected. $0.01199 to $0.01599

Tiered: the lower figure is the price on a higher Apify plan. Billing and the free credit live on Apify.

API

One POST returns the dataset directly. Same shape for every scraper in the library, so swapping the slug is the only change.

POST ยท run and get results
curl -X POST "https://api.apify.com/v2/acts/parseforge~vialibri-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "helloWorld": 123
  }'

Examples

Input that runs as-is.

input.json
{
  "helloWorld": 123
}

Reviews

Rated 5.0 out of 5 across 1 review. Read them on Apify.

Issues

We build and maintain this scraper, so a problem with it comes to us. Report it on the Apify listing and the thread stays attached to the scraper where the next person can find it: open an issue.

Broken and urgent, or you would rather not post in public? Write to parseforge@protonmail.com and it reaches the people who wrote it.

Related scrapers

Run viaLibri Books Scraper on Apify All scrapers