← Guides

How-to

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

Step-by-step: the exact input, what each field does, and the rows that come back from businesslist.my.

You want a list of Malaysian businesses in one trade with their phone numbers: every car parts shop in the country, or every advertising agency in Selangor. businesslist.my has them, but it shows 20 listings per page, so its car parts and accessories category (3,907 listings on 2026-10-25) is about 196 pages to click through and copy. This actor returns that category as one table from one run.

What you’ll need

Nothing but an Apify account. You don’t need a proxy or an API key. The actor never visits businesslist.my during your run. It reads a stored copy of the directory’s 365 category pages that we crawl separately, so a run is a filter, not a crawl. You pay $0.004 per listing returned, plus Apify’s own platform usage.

Step 1 — Open the actor

Open Malaysia 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.

Step 2 — Fill in the input

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 [])
statestringnoOnly listings in this state. Kept alongside ‘states’ for saved tasks.
statesarraynoOnly listings in this state. Several values in one run; combined with ‘state’. (default [])
citystringnoOnly listings in this city. Kept alongside ‘cities’ for saved tasks.
citiesarraynoOnly listings in this city. Several values in one run; combined with ‘city’. (default [])
categoriesarraynoOnly these categories, in the source’s own names. Available: 3d-technology, ac-repair-services, advertising, advice-centres, aerospace, after-school-programs,… (default [])
maxResultsintegernoPer query in lookup mode; per run in export mode. (default 500)

categories decides almost everything. It takes businesslist.my’s own category names, the way they appear in its web addresses, so car parts is car-parts-and-accessories, not “car parts”. Type a name the actor does not know and you get one free row listing all 365 categories, which is the quickest way to find yours. state takes the 13 states or Wilayah Persekutuan (Kuala Lumpur, Putrajaya and Labuan), and spellings such as “Penang” or “KL” are mapped for you. maxResults caps the whole run in export mode, so raise it when you want every row.

A working input:

{
  "categories": [
    "car-parts-and-accessories"
  ],
  "maxResults": 200
}

Step 3 — Run it

Press Start. The run reads the stored category, filters it and pushes the rows; it fetches nothing from businesslist.my. With maxResults: 200 you get the first 200 of 3,907, and the log says so. A filter that matches nothing returns one free no_match row rather than an empty dataset, and if the stored copy cannot be loaded you get one free row with a notice saying so.

Step 4 — Read the output

Every row looks like this — a real row from a real run:

{
  "name": "Leed Sports & Trading",
  "phone": "+60392222243",
  "phone_e164": "+60392222243",
  "street": "3A Block B, Jubilee Court, Jalan Jubilee, Off Jalan Loke Yew, 55200",
  "city": "Kuala Lumpur",
  "region": "Wilayah Persekutuan",
  "postal_code": "55200",
  "lat": 3.1303936038009894,
  "lng": 101.70847535133362,
  "country": "MY",
  "category": "Advertising",
  "listing_id": "364410",
  "extras": {
    "address": "3A Block B, Jubilee Court, Jalan Jubilee, Off Jalan Loke Yew, 55200, Kuala Lumpur , Wilayah Persekutuan, Malaysia"
  },
  "source": "snapshot",
  "source_url": "https://www.businesslist.my/company/364410/leed-sportstrading"
}
FieldExample valueMeaning
nameLeed Sports & TradingBusiness name as listed
phone+60392222243Phone number as the business wrote it
phone_e164+60392222243The same number in international format (+60…), when it can be read unambiguously
street3A Block B, Jubilee Court, Jalan Jubilee, Off Jalan Loke Yew, 55200Street address
cityKuala LumpurCity or town
regionWilayah PersekutuanState (one of the 13 states or Wilayah Persekutuan)
postal_code55200Malaysian postcode, when written in the address
lat3.1303936038009894Latitude, when the business pinned its location

phone is the column most people come for, and on the 3,907 car parts listings it was filled on 98.2%. It is kept exactly as the business typed it (“0441144388”, “+60392222243”), so use phone_e164 when you need one format: it is filled only where the number reads unambiguously as Malaysian, 23.3% of the car parts rows. The address is typed by the business too, which is why postal_code is on 71.1% and coordinates on 30.4% of those rows, and why a few rows carry the state name in city. There is no email column, because businesslist.my shows no email on its listing pages.

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 listing returned, plus Apify’s own platform usage. The whole car parts category is 3,907 listings, about $15.63; the 1,018 of them in Selangor are about $4.07. A business filed under two of your categories is returned and charged once, and notices (an unknown category, a request too large for one run, stale data) are free.

Where the data comes from

This reads businesslist.my, through a stored copy. The target is businesslist.my’s server-rendered category pages (20 company cards each, total stated on page 1), crawled into a snapshot by Scrapebench-api; runs filter the snapshot and never touch the site. Twice a day our checks run this actor against that stored copy and fail if the car parts category stops returning 50 rows with phones and addresses — what “verified” means.

businesslist.my says it lists about 284,000 companies, but its category index shows 365 categories, and a business that sits only in a category the index leaves out is not in the copy. The site’s own search is closed to crawlers in its robots.txt, so name lookups also answer from the stored copy. The run log states the date of the copy, and the copy is refreshed when it is older than a month and the actor is in use.

See it used

Malaysia Car Parts & Accessories Business List with Phone Numbers pulls the 3,907 car parts businesses for a distributor building a call list by state.

If you already have a list of company websites and need emails, Business Email, Phone & Contact Details Scraper reads them from each site instead.

Last updated 2026-10-25