Agentic Research

Webb-Site: The Essential Hidden Treasure for Hong Kong Stock Research, a One-Click Tool to Get Annual Report PDFs for All Listed Companies

2026/06/0822 min readUltraClaw閱讀中文原文
TopicsHong Kong stocksannual reportsdue diligence

Problem: hkexnews.hk's internal stock ID is a black box. 00653 (Bonjour) corresponds to 6319. What does 00928 (Emperor) correspond to? No one knows.
Answer: David Webb's webb-site.com directly bypasses this problem, listing all annual report PDF links on a single page.
Methodology: Discovery → Verification → Build an ID mapping table → Batch download automation


1. The Problem: hkexnews's Internal Stock ID Black Box

HKEXnews (hkexnews.hk), the Hong Kong Stock Exchange's disclosure platform, is the official repository for announcements and annual reports of Hong Kong-listed companies. However, its search system does not use the familiar 5-digit stock codes (such as 00653 and 00928), but rather an internal numeric ID.

For example:

  • 00653 (Bonjour Holdings) → internal ID is 6319
  • 00928 (Emperor International Investment) → internal ID is ? (unknown)

When you search with https://www1.hkexnews.hk/search/titlesearch.xhtml?stockId=00928, you get only "Total records found: 0".

This creates a fatal obstacle for automated batch downloading: you cannot directly query any company's documents by 5-digit code.


2. Solution: David Webb's webb-site.com

David Webb is Hong Kong's best-known independent shareholder activist. His website webb-site.com is not only an authoritative source for Hong Kong stock governance research, but also a practical database tool.

The dbpub/docs.asp page provides a complete list of financial reports for every listed company, with direct links to PDF files on hkexnews.hk.

Complete document list for 00928 Emperor International Investment

Only one URL is needed:

https://webb-site.linuxgrp.com/dbpub/docs.asp?p=15854

This page lists all 38 annual and interim reports from its 2002 listing to the present:

TypePeriodSizeDirect PDF link
Interim Report2025-09-302.0MBhkexnews.hk/.../2025123101827.pdf
Annual Report2025-03-312.4MBhkexnews.hk/.../2025111401690.pdf
Interim Report2024-09-302.0MBhkexnews.hk/.../2024122400502.pdf
Annual Report2024-03-316.0MBhkexnews.hk/.../2024073101434.pdf
............ (38 in total, dating back to 2002)

What problem does this solve?

  1. No need for an internal hkexnews ID: webb-site uses its own p={ID} system
  2. All documents listed on one page: no need to page through hkexnews search results
  3. Direct PDF URL: click to download, or use curl for batch downloads
  4. Includes historical data: dating back to the first year of listing

3. How to Find Any Company's webb-site ID

Method 1: Google Search

webb-site {5-digit code} {English company name}

For example, search for webb-site 00653 Bonjour → the result will show orgdata.asp?p=18201

Method 2: Known Mapping Table

As you use it over time, build your own mapping table:

Stock CodeCompanywebb-site ID
00928Emperor International Investment15854
00653Bonjour Holdings18201

Method 3: Obtain Indirectly from hkex.com.hk

Every company's hkex.com.hk quote page has a "View All on HKEXnews" link. Although it is dynamically generated with JS, it can be found using the browser developer tools.


4. Batch Download: Get It Done with One curl Command

With the PDF URL list from webb-site, batch downloading requires only one command:

# Download the latest 4 reports for 00928
curl -sL -o 00928_FY2025.pdf \
  "https://www.hkexnews.hk/listedco/listconews/sehk/2025/1114/2025111401690.pdf"

curl -sL -o 00928_6M_Sep2025_Interim.pdf \
  "https://www.hkexnews.hk/listedco/listconews/sehk/2025/1231/2025123101827.pdf"

curl -sL -o 00928_FY2024_Annual.pdf \
  "https://www.hkexnews.hk/listedco/listconews/sehk/2024/0731/2024073101434.pdf"

curl -sL -o 00928_6M_Sep2024_Interim.pdf \
  "https://www.hkexnews.hk/listedco/listconews/sehk/2024/1224/2024122400502.pdf"

4 PDFs, 13MB in total, all from the official hkexnews.hk.

Python Automation

import re, subprocess

# Extract all PDF URLs from a webb-site page
html = fetch(f"https://webb-site.linuxgrp.com/dbpub/docs.asp?p={company_id}")
urls = re.findall(r'\[(?:Annual|Interim) Report\]\((https://[^)]+)\)', html)

# Batch Download
for url in urls:
    filename = url.split('/')[-1]
    subprocess.run(["curl", "-sL", "-o", filename, url])

V. Other Useful Features of webb-site

In addition to the financial report list, webb-site also provides:

PageFunctionURL Pattern
orgdataCompany basic information, listing historyorgdata.asp?p={ID}
officersList of directors and senior executivesofficers.asp?p={ID}
overlapsDirector overlap relationships (network connections)overlap.asp?p={ID}
payDirector remuneration datapay.asp?p={ID}
advisersAuditors, lawyers, and other professional advisersadvisers.asp?p={ID}

Of particular note are officers and overlaps; these two pages are extremely useful for director network research in M&A due diligence. You can quickly see:

  • Which other companies the same director concurrently holds positions at
  • The cross-linked network of relationships among directors
  • The director's historical service record

6. Comparison with Direct Search on hkexnews

Dimensionhkexnews direct searchwebb-site
Requires internal ID?✅ Yes (black box)❌ No
Document coverageAll announcements + reportsAnnual reports + interim reports
Historical spanAllSince listing
Display per pagePaginated (100 items per page)All
Direct PDF URLRequires clicking into detailsDirect link
Automation difficultyHigh (JS rendering + internal ID)Low (static HTML)
StabilityDepends on hkexnews systemDepends on webb-site

7. Notes

  1. webb-site is a third-party website. PDF links ultimately point to hkexnews.hk, and the documents themselves are official.
  2. Data may be delayed, and is usually updated within a few weeks after a report is published.
  3. Covers only annual reports and interim reports, and does not include company announcements, monthly returns, or other document types.
  4. David Webb passed away in 2020. The website is currently maintained by the community, and its stability requires ongoing observation.

Conclusion

In our AK-SDD Hong Kong stock information search and investigation system, webb-site has replaced direct hkexnews search and become the primary data source for Step 1, "Batch Document Download." It is simple, reliable, and completely free.

If you are also conducting Hong Kong stock research, this website is worth bookmarking.


This article is based on practical, real-world usage experience with 00928.HK and 00653.HK. All links and IDs are real data.