zgdypw APIzgdypw.cn ↗
Access daily China box office rankings by movie, cinema, circuit, and city, plus weekly/monthly reports and market analysis via the zgdypw.cn API.
What is the zgdypw API?
The zgdypw.cn API exposes 13 endpoints covering China's film market data from the China Film Data Information Network, including real-time daily box office rankings across four dimensions — movies, cinemas, circuits, and cities. Endpoints like get_daily_box_office_movies return a top-10 movie list with per-film gross, cumulative sales, session count, and audience count alongside a market-level summary. Paginated report listings and full article parsers give access to weekly and monthly box office reports and market analysis.
curl -X GET 'https://api.parse.bot/scraper/977f48b3-069b-4d79-b678-ac96ee7b6b36/list_data_reports?page=1' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace zgdypw-cn-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
from parse_apis.zgdypw_china_film_data_api import ChinaFilm, Report, MarketAnalysisArticle, MovieRanking
client = ChinaFilm()
# Get today's daily movie box office rankings
movie_data = client.dailymovieboxoffices.get()
print(movie_data.date, movie_data.summary.total_boxoffice, movie_data.summary.cinema_count)
for movie in movie_data.movies:
print(movie.rank, movie.film_name, movie.day_sales, movie.day_audience)
# Browse weekly reports
for report in client.reports.list_weekly(limit=5):
print(report.title, report.date, report.url)
# Read a market analysis article
for article in client.marketanalysisarticles.list(limit=3):
print(article.title, article.url)
# Fetch full article content
full_article = client.marketanalysisarticles.get(url=article.url)
print(full_article.title, full_article.text)
Fetch the paginated list of all data reports (monthly and weekly box office reports). Each page returns up to 10 reports with their titles, publication dates, and article URLs. Navigate pages to access older reports.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number (1-indexed) |
{
"type": "object",
"fields": {
"page": "integer, current page number",
"reports": "array of report objects with title, url, and date"
},
"sample": {
"data": {
"page": 1,
"reports": [
{
"url": "https://www.zgdypw.cn/sc/sjbg/202606/10/t20260610_7405565.shtml",
"date": "2026-06-10",
"title": "全国电影票房周报(2026.06.01-06.07)"
},
{
"url": "https://www.zgdypw.cn/sc/sjbg/202606/03/t20260603_7405544.shtml",
"date": "2026-06-03",
"title": "全国电影票房月报(2026年5月)"
}
]
},
"status": "success"
}
}About the zgdypw API
Daily Box Office Data
Four endpoints deliver current-day rankings with no input required. get_daily_box_office_movies returns up to 10 movies ranked by daySales, each with filmName, filmTotalSales, daySession, and dayAudience, plus a summary object carrying totalBoxoffice, totalAudience, cinemaCount, and totalSession for the businessDay. The parallel endpoints get_daily_box_office_cinemas, get_daily_box_office_circuits, and get_daily_box_office_cities follow the same shape, substituting cinemaName, cinemaChainName, or cityName as the ranking key.
Weekly and Monthly Reports
list_data_reports returns a paginated list (using the page parameter) of all available reports with title, url, and date. If you only want one type, list_monthly_reports and list_weekly_reports pre-filter the list. Pass a url from those results to get_monthly_box_office_report or get_weekly_box_office_report to retrieve the full article. Both report endpoints return title, text, and image_urls — the visual charts in these reports are image-based, so text is often empty and the charts live in image_urls. Note that older weekly report URLs may return a 404.
Market Analysis and New Cinema Reports
list_market_analysis_articles paginates market commentary articles. Fetching a specific article via get_market_analysis_article returns the full text content, which typically includes province-level box office breakdowns, alongside any image_urls. For cinema supply-side data, list_market_info_articles surfaces new cinema reports and movie announcements. get_new_cinemas_monthly_report parses structured table data from these pages, returning a table_data field — an array of arrays — listing newly opened cinemas with their names, locations, screen counts, and opening dates.
The zgdypw API is a managed, monitored endpoint for zgdypw.cn — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when zgdypw.cn changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official zgdypw.cn API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Track daily Chinese box office gross and audience count per film to feed a film industry dashboard.
- Monitor top-performing cinema circuits by daily session count and revenue using
get_daily_box_office_circuits. - Build city-level box office heat maps from the
cityNameandtotalSalesfields inget_daily_box_office_cities. - Archive China monthly box office report images by collecting
image_urlsfromget_monthly_box_office_reporton a scheduled basis. - Parse newly opened cinemas — names, locations, and screen counts — from
table_datainget_new_cinemas_monthly_reportto track exhibition capacity growth. - Aggregate province-level box office commentary from
get_market_analysis_articletext for qualitative trend analysis. - Paginate through
list_weekly_reportsto build a historical index of weekly box office PDFs and chart images.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does zgdypw.cn have an official developer API?+
What does `get_daily_box_office_movies` return, and how many movies does it cover?+
daySales). Each entry includes filmName, daySales, filmTotalSales, daySession, and dayAudience. A summary object covers the full market: totalBoxoffice, totalAudience, cinemaCount, totalSession, and the businessDay date. Films ranked outside the top 10 are not included in this response.Are historical daily box office figures available for a specific past date?+
get_daily_box_office_movies, get_daily_box_office_cinemas, get_daily_box_office_circuits, get_daily_box_office_cities) all return current-day data with no date parameter. Historical daily figures are not exposed. You can fork this API on Parse and revise it to add a date-filtered endpoint if the source exposes such a page.Why do some weekly report URLs return a 404?+
list_weekly_reports for recent reports should resolve correctly, but older entries in the paginated list may point to pages that no longer exist. It is worth checking the url field before making a downstream request.