← Guides

How-to

How to run Hong Kong Business Directory List Scraper (Phone & Address)

Step-by-step: the exact input, what each field does, and the rows that come back from yp.com.hk Yellow Pages.

You want a list of Hong Kong businesses in one trade with their phone numbers: every cleaning company in Kowloon, or every solicitors’ office in Central. The yp.com.hk Yellow Pages has them, but a category page shows 10 listings and loads the next 10 as you scroll, so Solicitors (1,012 listings on 2026-10-25) is about 100 loads before you have copied a single row. District and region sit inside the address text, and each office of a multi-office firm is its own entry. This actor returns the listings with district, region and a branch flag already split out, from one run.

What you’ll need

Nothing but an Apify account. You don’t need an API key or a proxy. We keep a stored copy of the directory’s category listings and your run filters that copy, so it never waits on yp.com.hk. You pay $0.004 per listing returned, plus Apify’s own platform usage.

Step 1 — Open the actor

Open Hong Kong Business Directory List Scraper (Phone & Address) on the Apify Store and press Try for free. The actor’s own page on this site lists its live health and pricing.

The Hong Kong Business Directory List Scraper (Phone & Address) listing on the Apify Store
The listing on the Apify Store. Pricing and the nightly health record are both public.

Step 2 — Fill in the input

The input form for Hong Kong Business Directory List Scraper (Phone & Address) in the Apify Console
The input form, as it appears in the Apify Console.
FieldTypeRequiredWhat it does
modestringnoauto = export when no query is given, otherwise lookup. (default auto)
querystringnoA business name (or listing number) to look up live. Kept alongside ‘queries’ for saved tasks.
queriesarraynoA business name (or listing number) to look up live. Several values in one run; combined with ‘query’. (default [])
regionstringnoOnly listings in this region. Kept alongside ‘regions’ for saved tasks.
regionsarraynoOnly listings in this region. Several values in one run; combined with ‘region’. (default [])
districtstringnoOnly listings in this district. Kept alongside ‘districts’ for saved tasks.
districtsarraynoOnly listings in this district. Several values in one run; combined with ‘district’. (default [])
categoriesarraynoOnly these categories, in the source’s own names. Available: Abrasives, Accountants-Certified-Public-Accountants-Public-Accountants, Accountants-General,… (default [])
maxResultsintegernoPer query in lookup mode; per run in export mode. (default 500)

Two fields decide what comes back. categories takes yp.com.hk’s own category names with hyphens, as they appear in its web addresses: Cleaning-Services, Solicitors. There are 1,547 of them, and a name the actor does not know returns the full list as a free row, so a wrong guess costs nothing. region is one of Hong Kong (the island), Kowloon or New Territories, and district is the district named in the address, such as Central, Wan Chai or Mong Kok. Leave query empty for a list; fill it only to look up named businesses.

A working input:

{
  "categories": [
    "Cleaning-Services"
  ],
  "region": "Kowloon",
  "maxResults": 200
}

Step 3 — Run it

Press Start. Rows are pushed to the dataset as they’re found, so the run log fills in as it works.

The input above returned 94 listings on the 2026-10-25 data: every cleaning-services company with a Kowloon address. Because the run reads the stored copy, it finishes in seconds rather than paging through the site. If a run comes back with a single notice row instead of listings, read it: an unknown category returns the category list, and a filter that matches nothing says so. Neither is charged.

Step 4 — Read the output

Each run returns a labelled table, not raw JSON:

The output fields returned by Hong Kong Business Directory List Scraper (Phone & Address)
The output view — every field the actor returns, named and typed.

Every row looks like this, a real row from the stored copy:

{
  "name": "Parker Cleaning Servs Co Ltd",
  "phone": "2349 0467",
  "phone_e164": "+85223490467",
  "website": null,
  "street": "Unit 11, 10/F., Block A2, Yau Tong Industrial City, 17 Ko Fai Road,Yau Tong",
  "city": "Yau Tong",
  "region": "Kowloon",
  "lat": 22.2951605,
  "lng": 114.235119,
  "country": "HK",
  "category": "Cleaning Services",
  "listing_id": "589349",
  "extras": {
    "fax": "2347 6069"
  },
  "source": "snapshot",
  "source_url": "https://www.yp.com.hk/Category/CompanyInfo/23490467/589349/0X5893490000X000/1/en"
}
FieldExample valueMeaning
nameParker Cleaning Servs Co LtdBusiness name as listed
phone2349 0467Phone number on the listing
phone_e164+85223490467The same number in international format (+852…)
website—Website, when the listing has one
streetUnit 11, 10/F., Block A2, Yau Tong Industrial City, 17 Ko Fai Road,Yau TongStreet address as listed
cityYau TongDistrict (e.g. Wan Chai, Mong Kok, Tsuen Wan)
regionKowloonHong Kong, Kowloon or New Territories
lat22.2951605Latitude, when the listing has a map pin

Most people come for phone, which was on 100% of the 71,185 listings in the stored copy (read 2026-10-25 to 2026-10-27), and for city, the district, which was on 99.4%. Watch three things. Coordinates were on 72.7% of listings and website on 17.6%, so plan for gaps there; both vary a lot by category. Fax sits in extras.fax (26.3% overall, 87.7% for Solicitors). And a row with extras.branch set to true is one office of a multi-office firm (10.7% of listings), so filter on it if you only want head offices.

Step 5 — Export it

Open the Dataset tab and export to CSV, JSON or Excel, or pull the same rows from the API, which is what you want if this is going to run on a schedule.

What it costs

$0.004 per business listing returned, so 500 listings cost $2.00 and the 94 Kowloon cleaning companies above cost $0.38. A business filed under two of the categories you asked for is returned and charged once. Notice rows are free: an unknown category, a request too large for one run, or a stale-data note. Apify bills its own platform usage separately, per your plan.

Where the data comes from

This reads yp.com.hk Yellow Pages directly. The target is Server-rendered HTML category pages plus the page’s own scroll request (a plain GET, 10 listings per page), swept into a stored copy; runs filter the copy and never touch yp.com.hk. Twice a day our checks run this actor against the stored copy and check the rows that come back: what “verified” means.

The copy is refreshed when it is older than a month and the actor is in use, and the run log states the date of the copy. The fiddly part of the source is completeness: a category page shows only its first 10 listings, so the sweep follows the page’s own scroll request and checks the count against the category’s stated total. yp.com.hk does not publish email addresses.

See it used

Central, Hong Kong Solicitors List with Phone Numbers pulls every solicitors’ office in Central for a CRM import.

No email in this data. When a listing has a website (17.6% did), Business Email, Phone & Contact Details Scraper can read that website for an email address.

Last updated 2026-10-27