AAStocks Scraper – Hong Kong Stock Quotes & Financial News avatar

AAStocks Scraper – Hong Kong Stock Quotes & Financial News

Pricing

from $2.00 / 1,000 news items

Go to Apify Store
AAStocks Scraper – Hong Kong Stock Quotes & Financial News

AAStocks Scraper – Hong Kong Stock Quotes & Financial News

Scrape AAStocks without an API: Hong Kong stock real-time quotes (price, change, volume, P/E, market cap, 52-week high/low) and financial news listings. Bulk-paste tickers; export JSON/CSV/Excel for financial analysis and dashboards.

Pricing

from $2.00 / 1,000 news items

Rating

0.0

(0)

Developer

Chad

Chad

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

6 days ago

Last modified

Share

AAStocks Scraper | Hong Kong Stock Quotes & Financial News (No API, No Login)

One Actor covers two kinds of AAStocks (aastocks.com) Hong Kong finance data: real-time stock quotes (stock code, latest price, change, volume, market cap, P/E, etc.) and financial news (category listings such as latest news, top news, bullish/bearish news). No login required, no API token needed — it parses public web pages (HKEX's official scraper charges $250/1000 rows; this one reads public pages, so the price is a fraction of that). Everything runs through CheerioCrawler to parse HTML, no browser involved — low cost, fast.

Who it's for: engineers doing HK stock sentiment/quant analysis, anyone who needs real-time HK stock quotes to feed a dashboard, people tracking HK financial news flow, market research report writers, researchers who need an HK stock dataset, and anyone building a side project.


What you get

Every record returns the fields below (missing values are always null — no field is dropped; the quote/news field sets share one table, so whichever fields the current mode doesn't fill in are always null):

FieldDescriptionExampleAvailable in
stock_codeHK stock code (zero-padded to 5 digits)00700quote only
symbolAAStocks internal code00700.HKquote only
nameStock nameTENCENTquote only
last_priceLatest price431.2quote only
changeChange (in dollars)1quote only
change_pctChange (%)0.232quote only
day_highDay high445.8quote only
day_lowDay low431.2quote only
day_openOpening price433quote only
prev_closePrevious close430.2quote only
week52_high52-week high683quote only
week52_low52-week low411quote only
volumeTrading volume (shares, B/M/K converted)24960000quote only
turnoverTurnover (HKD, B/M/K converted)10900000000quote only
pe_ratioPrice/earnings ratio (P/E)15.653quote only
market_capMarket cap (HKD, B/M/K converted)3920570000000quote only
quote_timeQuote timestamp (always null in v1.0)
quote_urlIndividual stock quote page URLhttp://www.aastocks.com/en/stocks/quote/detail-quote.aspx?symbol=00700quote only
news_idUnique news IDNOW.1531802news only
titleNews titleHKD996.9M Southbound Trading Net Outflow from HUA HONG GRACEnews only
summaryNews summary (listing-page excerpt, often truncated)news only
contentFull news article text (always null in v1.0)news only
sourceNews source (always AASTOCKS)AASTOCKSnews only
categoryCategory (always null in v1.0)news only
related_stocksArray of related HK stock codes mentioned in the article["00700", "01810"]news only
keywordKeyword tag (always null in v1.0)news only
published_atPublish time (ISO 8601, converted to UTC)2026-07-03T10:25:00.000Znews only
news_urlNews article URLhttp://www.aastocks.com/en/stocks/news/aafn-con/NOW.1531802/latest-news/AAFNnews only
source_modeWhich mode this record came fromquote, newsboth
source_queryQuery used when scraping00700, aafn/latest-newsboth
scraped_atScrape timestamp (ISO 8601)2026-07-04T00:00:00.000Zboth

Important (full disclosure):

  • quote mode only fills quote-related fields; news-related fields are always null, and vice versa.
  • quote_time (the quote timestamp) is always null in v1.0 — AAStocks' static HTML response has no reliable "quote/updated time" node; the timestamp for a live price is likely updated client-side via JavaScript after page load, not present in the initial HTML response. Rather than guess and mislead you, v1.0 always returns null.
  • content (the full article text) is always null in v1.0 — v1.0 only scrapes the news category listing page, not each article's detail page. The listing page itself shows an excerpt (often truncated with "..."), which maps to summary; stuffing a truncated excerpt into content would mislead you into thinking you got the full text, so the two fields are kept separate and content is set to null.
  • category and keyword are always null in v1.0 — the listing page has no reliable per-item category/keyword tag to parse.
  • related_stocks is parsed by matching (stock code.HK)-style in-text markers found in the news title/summary text — it is not an official tag field.

Two modes, one scraper

ModeWhat it doesBilling eventPrice
📈 quoteReal-time quotes by HK stock codeproduct-detail (per item)$0.008
📰 newsFinancial news category listing (e.g. latest, top, bullish/bearish news)search-listing (per item)$0.002

Regardless of which mode you run, every Run start additionally charges a one-time actor-start fee of $0.005. All charges are billed only after data is successfully written to the dataset; the Run log prints total_items / charged / skipped at the end for reconciliation.

Run one mode per run — just pick it from the dropdown in the Apify Console.


Input fields

FieldTypeRequiredDefaultDescription
modeenumrecommendednewsChoose one of quote (stock quotes) / news (financial news).
stockCodesstring[]required for quoteHK-listed stock codes, e.g. 700 (Tencent), 5 (HSBC Holdings), 1 (CK Hutchison). Auto zero-padded to 5 digits. Up to 100 per run.
newsCategorystringoptionalaafn/latest-newsFinancial news category path. Verified working: aafn/latest-news, aafn/top-news, aafn/popular-news, aafn/recommend-news, aafn/positive-news, aafn/negative-news, aafn/research-report, aafn/result-announcement.
dateFromstringoptionalOnly keep news published on or after this date, format YYYY-MM-DD (Hong Kong time). news mode only.
dateTostringoptionalOnly keep news published on or before this date, format YYYY-MM-DD (Hong Kong time). news mode only.
bulkInputstringoptionalOne per line, press Enter, no quotes or commas. Used as stock codes in quote mode, automatically merged into stockCodes at runtime.
maxItemsintegeroptional50In news mode, max items per category (v1.0 is single-page only, actual cap depends on how many items AAStocks shows per page, roughly 20). Not applicable in quote mode, which depends on the number of stock codes.

Examples

📈 Real-time stock quotes (multiple codes)

{
"mode": "quote",
"stockCodes": ["00700", "00005"]
}

📰 Financial news (latest news)

{
"mode": "news",
"newsCategory": "aafn/latest-news",
"maxItems": 20
}

📋 Bulk-paste stock codes

{
"mode": "quote",
"bulkInput": "700\n5\n1\n9988",
"maxItems": 50
}

Notes

  • Public data only. Both the AAStocks individual stock quote pages and news listing pages are public webpages; no login and no AAStocks account required.
  • No login / no API token. Fill in the input and run — no keys to configure.
  • Parses public HTML pages, no browser. Uses CheerioCrawler exclusively against aastocks.com's server-rendered pages, saving a large chunk of compute cost compared to Playwright.
  • Polite to the site. Concurrency ≤5, failed requests retry with exponential backoff up to 3 times — it does not hammer AAStocks' servers.
  • v1.0 does not support keyword news search. AAStocks' keyword search is an ASP.NET form postback (POST + ViewState), not a simple URL parameter; v1.0 doesn't support it yet, planned for v1.1. For now, use newsCategory to browse by category.
  • v1.0 news listings are single-page only. Testing found no usable pagination mechanism on AAStocks' news listing pages — each category only returns the items shown on that single page (roughly 20 or so); maxItems is only an upper bound and cannot be used to fetch more via pagination.
  • How to provide stock codes: just give the number, e.g. 700, 5 — the scraper automatically zero-pads it to AAStocks' 5-digit format (00700); inputs already in 5-digit form can also be pasted directly.

FAQ

Q: Why is there no quote time (quote_time)? Testing found no reliable "quote/updated time" node in the static HTML response of AAStocks' real-time quote pages; the timestamp for a live price may be updated client-side via JavaScript after page load, and isn't present in the initial HTML response. To avoid guessing a field incorrectly and misleading you, v1.0 always returns null.

Q: Why is the news content (full text) null? v1.0 only scrapes the news category listing page and does not visit each article's detail page for the full text. The listing page itself displays a truncated excerpt (often cut off with "..."), which is already mapped to the summary field; stuffing the truncated excerpt into content would mislead you into thinking you got the full article, so the two are deliberately kept separate and content is set to null.

Q: Can I search news by keyword? Not in v1.0. Testing found that AAStocks' news search function is a traditional ASP.NET form postback (server-side ViewState + POST), not a simple URL-parameter query; handling it directly with CheerioCrawler carries risk (ViewState may be time-sensitive). v1.0 uses newsCategory category browsing as a substitute for now; keyword search is planned for v1.1.

Q: How is billing calculated? Each Run start charges actor-start once ($0.005); quote mode charges product-detail ($0.008) per quote; news mode charges search-listing ($0.002) per news item. All charges are billed only after data is successfully written to the dataset, and the Run log prints the actual charged item count.

Q: What if I can't get any data? For quote mode, check whether the stock code is a valid HK-listed stock code (codes with no quote found are skipped and not charged); for news mode, check whether the category path is misspelled.


Deploy

apify login # first time: paste your Apify token (never written to the repo)
apify push # build and upload to the Apify Store

After publishing, set the PPE event prices in Apify Console → Monetization: actor-start $0.005, product-detail $0.008, search-listing $0.002.


Disclaimer

This scraper only collects publicly visible AAStocks (aastocks.com) Hong Kong stock quote and financial news data, for research and personal use only, not for any unauthorized commercial resale. Please ensure your use complies with aastocks.com's Terms of Service and your local laws. All stock prices and financial information do not constitute investment advice — investment decisions are your own responsibility and at your own risk. This Actor makes no guarantee about the accuracy, timeliness, or completeness of the data — always refer to the live AAStocks website for current stock prices and news content.


AAStocks scraper, Hong Kong stock quotes, HK stock price API, HKEX data, Hong Kong financial news, HK stock market data, real-time HK quotes