· 13 min read
East Money Scraper: 48 Data Fields, Up to 1,000 Free Results/Month
East Money Scraper extracts structured stock quotes, historical K-line bars, market rankings, and Chinese financial news across 48 output fields for $5.00 per 1,000 results on the free tier. The Actor pulls directly from public JSON APIs without requiring platform login or custom session headers. Output payloads separate data into distinct records for quotes, price candles, news articles, and explicit error summaries. This collector is built for quant researchers and automated equity monitors tracking Shanghai, Shenzhen, and ChiNext listings; it is not suited for traders needing zero-latency level-2 order book depth, which the public endpoints do not supply.
Try it: open East Money Scraper on Apify, sign in on the free plan and run the prefilled example.
Can you try East Money Scraper before paying?
Yes. Apify's free plan includes $5.00 of prepaid usage every month and asks for no credit card. At $0.005 per result, that covers up to 1,000 results of East Money Scraper a month, before run-start charges and platform usage.
East Money Scraper was last updated on 2026-08-06. It is one of 1,725 Actors CrawlerBros publishes on Apify, which together have 686,256 lifetime public runs and an average rating of 4.63 out of 5 across 416 reviews.
What does it cost to run East Money Scraper?
Each result costs $0.005 on Apify's free plan, which is $5.00 per 1,000 results. Starting a run is charged separately at $0.005 per GB of Actor memory. Apify also bills the platform usage each run consumes, at the rates of your Apify plan, on top of these charges.
| Apify plan | Per result | Per 1,000 results |
|---|---|---|
| FREE | $0.005 | $5.00 |
| BRONZE | $0.00433 | $4.33 |
| SILVER | $0.00367 | $3.67 |
| GOLD | $0.003 | $3.00 |
| PLATINUM | $0.003 | $3.00 |
| DIAMOND | $0.003 | $3.00 |
Total result charges scale directly with the volume of records written to your dataset. The maxItems parameter and the size of your stockCodes array act as the primary cost drivers during scheduled runs. Running a single ticker with includeKline set to false is the most efficient way to validate schema mapping before fetching larger historical series.
How do you run East Money Scraper from the API?
The schema marks 1 of its 20 controls as required: mode. The payload below uses the schema's own prefilled values, so it runs as written once you substitute your API token.
Call the synchronous endpoint to start a run and receive dataset items in one request:
curl -X POST "https://api.apify.com/v2/acts/crawlerbros~eastmoney-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"mode":"search"}'
The same run from Python, using the official client:
from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run_input = {
"mode": "search"
}
run = client.actor("crawlerbros~eastmoney-scraper").call(run_input=run_input)
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item)
And from Node.js:
import { ApifyClient } from 'apify-client'
const client = new ApifyClient({ token: '<YOUR_APIFY_TOKEN>' })
const input = {
"mode": "search"
}
const run = await client.actor('crawlerbros~eastmoney-scraper').call(input)
const { items } = await client.dataset(run.defaultDatasetId).listItems()
console.log(items)
The synchronous endpoint holds the connection open until the run finishes, which is convenient for small batches and wrong for large ones. For anything long running, start the run asynchronously and poll, or attach a webhook, so a dropped connection does not cost you the results.
Which East Money Scraper inputs matter, and which can you skip?
The mode selector dictates which underlying East Money API is targeted, requiring values such as byStock, search, or topGainers. For equity lookups, stockCodes accepts plain digits, prefixed strings, or exchange identifiers, while maxItems caps total returned records. Most users should leave adjustPrice at qfq and searchSort at default during initial runs.
mode(string): What to fetch. Default:"search".searchQuery(string): Free-text news keyword, e.g.贵州茅台,新能源,美联储. Default:"贵州茅台".searchSort(string): Order of news results. Note: upstreamtime(newest-first) currently returns the site-wide hot feed and ignores the keyword, sodefault(relevance) is recommended. Default:"default".stockCodes(array): Codes in any form:600519,1.600519,SH600519,SZ000001,000001(auto-detected as Shenzhen). Default:["600519"].includeKline(boolean): Emit K-line candles alongside the quote (mode=byStock / byStockUrl / byStockName). Default:true.klineDays(integer): How many candles to emit per stock. Default:60.klinePeriod(string): Candle granularity. Default:"day".adjustPrice(string): How the historical prices are adjusted. Default:"qfq".stockNames(array): Chinese stock names to resolve, e.g.贵州茅台,宁德时代,平安银行. Default:["贵州茅台"].stockUrls(array): Quote page URLs, e.g.https://quote.eastmoney.com/sh600519.html,https://quote.eastmoney.com/sz000001.html. Default:["https://quote.eastmoney.com/sh600519.html"].newsColumn(string): Kuaixun flash-feed column to browse. Default:"102".marketRank(string): Which market board to rank. Default:"allA".
The other 8 controls, with their defaults, are listed in the input schema on East Money Scraper on Apify.
Fixed-choice controls: mode accepts search (Search finance news), byStock (Quote + K-line history for stock codes), marketNews (Browse market news by column (kuaixun flash feed)), byStockUrl (Quote from stock page URL(s)), topGainers (Top gainers/losers by market rank), byStockName (Resolve quote + K-line from a stock name (suggest)); searchSort accepts time (Newest first), default (Relevance); klinePeriod accepts day (Daily), week (Weekly), month (Monthly); adjustPrice accepts qfq (Forward-adjusted (前复权)), hfq (Backward-adjusted (后复权)), none (Raw (不复权)); newsColumn accepts 19 values (default 102), including 102 (Finance (财经)), 100 (All news), 103 (Stocks (股票)), 104 (Funds (基金)); marketRank accepts shA (Shanghai A-shares), szA (Shenzhen A-shares), allA (All A-shares), gem (ChiNext (创业板 / GEM)), us (US stocks (NASDAQ, NYSE, AMEX)).
What does East Money Scraper return?
Returned datasets provide normalized fields including price, peRatio, turnoverRate, and historical OHLCV bars grouped by recordType. News modes return title, digest, and publishTime for sentiment analysis. The output intentionally omits intraday tick-by-tick transaction logs and proprietary broker order routing data.
stockCode,stockName,secid(e.g.1.600519),price,change,changePct,open,high,low,prevClose,volume,amount,turnoverRate,volumeRatio,peRatio,peStatic,peDynamic,pbRatio,totalMarketCap,floatMarketCap,totalShares,floatShares,amplitude,limitUp,limitDown,navPerShare, plusmarket/marketCap/mainNetInflowon ranking records,sourceUrlklineDate,open,close,high,low,volume,amount,amplitude,changePct,change,turnover, plusstockCode,stockName,sourceUrltitle,digest,newsUrl,publishTime,imageUrl,column,sourceUrl- Search mode also emits
newsCode(article code) andsource(publisher, e.g. 证券时报网) - MarketNews mode also emits
newsId(kuaixun item id) andcommentCount input,message- emitted for invalid codes/URLs instead of silent drops
These are the documented fields. Optional ones can be empty on a given record, so measure how often each field your deliverable depends on is populated across a real sample before automating the handoff.
How do you build the workflow end to end?
Open East Money Scraper and work through these in order. Each step ends with something to check, so a bad configuration surfaces on a small run rather than a scheduled one.
- Select mode byStock and supply a single ticker like 600519 in stockCodes to verify connectivity against the East Money JSON endpoints.
- Inspect the emitted record to verify recordType is stock and that pricing fields such as price, open, and totalMarketCap are populated.
- Enable includeKline with klineDays set to 30 and adjustPrice set to qfq, then confirm subsequent dataset entries contain recordType kline with open, close, high, and low candles.
- Add diagnostic filtering using minPrice or minChangePct if your ingestion system only processes active or threshold-crossing securities.
- Switch mode to search or marketNews with a specific newsColumn like 102 when integrating macro headlines alongside your price pipeline.
- Check dataset outputs for recordType error to catch unresolvable tickers or malformed inputs without breaking downstream parsing.
- Scale stockCodes to your target portfolio list and enforce maxItems to cap dataset size and total platform expense.
How do you apply it? Three worked playbooks
These are East Money Scraper's own documented use cases, each worked through as an operating pattern rather than a description.
Use case 1: A-share quote monitoring
Outcome: A-share quote monitoring / portfolio tracking
Configure: Set mode to byStock, stockCodes to ["600519", "SZ000001"], includeKline to false, and maxItems to 50.
Working method: Run the Actor on an hourly schedule during trading hours, ingesting snapshot records and tracking changes across turnoverRate, volumeRatio, and peDynamic.
Deliverable: A structured JSON or CSV dataset of current equity valuations and trading multiples updated every cycle.
Stop condition: Stop if the Actor returns recordType error indicating an invalid ticker structure in stockCodes.
Use case 2: Historical K-line series
Outcome: Historical price series for backtesting
Configure: Set mode to byStock, stockCodes to ["600519"], includeKline to true, klineDays to 500, klinePeriod to day, and adjustPrice to qfq.
Working method: Execute a single run per target asset to pull back-adjusted daily OHLCV bars, then join the resulting kline records into a continuous time-series table.
Deliverable: A tabular time series containing 500 days of forward-adjusted open, high, low, close, and volume records.
Stop condition: Stop if returned kline records contain gaps in klineDate or unadjusted price spikes caused by missing adjustment flags.
Use case 3: Finance news feed
Outcome: Chinese-language finance news monitoring
Configure: Set mode to search, searchQuery to "新能源", searchSort to default, and maxItems to 50.
Working method: Poll the search endpoint periodically, de-duplicating incoming records by newsCode or newsUrl before passing digests to downstream NLP pipelines.
Deliverable: An append-only stream of Chinese financial news records with headline, digest, publishTime, and publisher source.
Stop condition: Stop if search results fall back to HTML mode repeatedly with empty digests across consecutive runs.
What breaks, and how do you design around it?
- Hong Kong (
m:100+t:3) boards intermittently returnrc:102(empty payload) - they are intentionally not exposed inmarketRank. byStockNameresolves via the suggest API, which matches the top suggestion only (e.g.茅台→600519); ambiguity is resolved to the first suggestion.topGainersscans the first 5 pages (250 rows) of a ranking andmarketNewsthe first 10 pages; filters that match nothing within that window emit 0 records with a status message (never an infinite pagination loop).marketRank=uscovers NASDAQ + NYSE + AMEX (m:105,m:106,m:107);changePctfor US stocks is a true percentage (relative to previous close).
When querying historical candles, multi-host fallback handles transient host latency, but requesting large time windows across hundreds of tickers should be partitioned across multiple targeted runs. Stock resolution via suggest mode only selects the top candidate, so explicit stockCodes should always replace stockNames in automated pipelines.
When should you not use East Money Scraper?
Do not use this Actor if your trading workflows require sub-second tick feeds, order book depth, or real-time trade execution webhooks, as public JSON endpoints provide delayed valuation data. If your research strategy prioritizes investor sentiment and retail community forum discussions rather than raw exchange statistics, consider Xueqiu Scraper instead. Similarly, if your equity tracking relies on alternative financial portals and broker infrastructure in mainland China, evaluate Tonghuashun (同花顺) Finance Scraper.
What should you check before trusting the output?
- Verify recordType equals stock or kline rather than error before writing records to a production database.
- Confirm price, open, and prevClose are non-null numeric values on all stock records.
- Check that klineDate follows a valid chronological sequence without duplicated timestamps on K-line arrays.
- Alert if the ratio of recordType error entries exceeds five percent of total input stockCodes.
- Ensure publishTime is present and uncorrupted on news records fetched via search or marketNews modes.
None of this proves a record is correct. It gives a scheduled East Money Scraper run defined points where it should stop instead of quietly passing bad data downstream.
Frequently asked questions
How much does East Money Scraper cost to run?
Each result written to your dataset costs $0.005 on the free plan, which equals $5.00 per 1,000 results. Run-start charges apply every time an execution starts, and Apify also bills underlying platform usage according to your plan tier.
Does this Actor require East Money account credentials?
No account credentials or login sessions are required. The Actor queries East Money's public JSON API endpoints directly using standard HTTP requests, bypassing authentication workflows entirely.
How are stock splits and dividends handled in K-line history?
You can configure the adjustPrice parameter to qfq for forward-adjusted prices, hfq for backward-adjusted prices, or none for unadjusted raw exchange values across daily, weekly, or monthly candle intervals.
What happens when an invalid stock code is provided?
Instead of failing silently or stopping the execution, the Actor emits a dedicated record with recordType error containing the invalid input string and diagnostic details for debugging downstream.
Can I scrape US equities through this tool?
Yes, setting mode to topGainers with marketRank configured to us allows you to fetch ranking data covering major US exchanges including NASDAQ, NYSE, and AMEX with percentage change calculations.
Where to go next
When you are ready to run it, open East Money Scraper on Apify; the free plan covers up to 1,000 results a month.
Start with the East Money Scraper Actor page for the current input schema, pricing tier, and run history.
Other Actors we maintain for related data:
- Xueqiu Scraper: Scrape Xueqiu (xueqiu.com) - China's largest investor community.
- Tonghuashun (同花顺) Finance Scraper: Scrape Tonghuashun (10jqka.com.cn) A-share stock quotes via the public realhead API, market news via the news feed API, and stock search.
- Barchart Stock Quotes Scraper: Fetch real-time-delayed stock/ETF quotes from Barchart.com by ticker symbol - last price, change, percent change, volume, market cap, P/E ratio, EPS, dividend yield, and more.
- Investing.com Quotes Scraper: Scrape real-time quote data from Investing.com - stocks, indices, currency pairs, commodities, crypto, and ETFs.
- Fang.com (房天下) Real Estate Scraper: Scrape fang.com - one of China's largest real estate portals.
- Bayt.com Middle East Jobs Scraper: Scrape Middle East job listings from Bayt.com with titles, companies, locations, salaries, career level, experience, full descriptions, skills, and apply links.
- US Stock Price Scraper: Download historical stock price data (OHLCV) for US stocks, ETFs, and indices from Yahoo Finance.
Related guides:
- Yahoo Finance Scraper: 48 Data Fields, Up to 2,500 Free Results/Month
- Barchart Stock Quotes Scraper: 22 Data Fields per Record (2026)
- Google News Scraper: 12 Data Fields, Up to 2,500 Free Results/Month
- Morningstar Scraper: $5.00 per 1,000 results (2026)
Resources
Actor documentation, input schema, and pricing: verified against the published Actor on 2026-09-27.
Actor last updated by its maintainers on 2026-08-06.
Run outcome figures cover the 30 day public window ending 2026-09-27.
Featured actors
East Money Scraper
Scrape East Money (eastmoney.com) - China's largest finance portal. Search finance news, get real-time stock quotes and historical K-line data from the public push2 JSON APIs, browse market news by column, and resolve quotes from stock page URLs. No login required.
Run on Apify ↗