Liepin Scraper ็่: Jobs, Salary & Change Tracking
Pricing
from $1.87 / 1,000 jobs
Liepin Scraper ็่: Jobs, Salary & Change Tracking
Liepin scraper for public China white-collar job postings, with cross-run change tracking (new/updated/removed jobs). Export source URLs, CNY salary ranges, requirements, locations, and company context in clean, analysis-ready rows.
Pricing
from $1.87 / 1,000 jobs
Rating
0.0
(0)
Developer
GetAScraper
Maintained by CommunityActor stats
0
Bookmarked
31
Total users
9
Monthly active users
3 days ago
Last modified
Categories
Share
๐จ๐ณ Liepin Scraper ็่: China white-collar jobs and salary data
| Collect public Liepin roles with salary and employer context attached, and track what changes. Search China's white-collar job market by keyword and city, or start from featured listings. Turn on change tracking for a recurring feed of new, updated, and removed jobs instead of the same full list every time. | |||
| China jobs source comparison ย ย โขย ย Zhaopin, 51Job, Liepin, and ChinaHR listings side by side | |||
|
Jobs, salary & hiring-change monitoring |
Jobs, salary & employer context |
โค You are here |
Job titles, salary & employer data |
|
Public Liepin roles with salary and employer context attached Search China's white-collar job market by keyword and city, or start from featured listings, and keep normalized CNY salary ranges, requirements, and company details in clean rows. |
|
๐ฐ Normalized CNY salary Monthly bounds, bonus months, and an annual CNY estimate. |
๐ Change tracking A recurring feed of new, updated, and removed jobs, not the same full list every run. |
๐ข Employer signals Company type, industry, and scale for hiring intelligence. |
๐ Optional job detail Enable full public job descriptions only when you need them. |
Liepin (็่) is a public Chinese job source with strong white-collar hiring coverage. This Actor returns public listing data for job-data products, recruitment-market research, salary analysis, and company hiring intelligence. It does not collect candidate profiles or private contact information.
What you can do
- Collect featured public Liepin jobs with one click.
- Search a role such as software engineer, tax specialist, or sales manager across a chosen city.
- Turn on change tracking to get only new, updated, and removed jobs on a recurring schedule, instead of the same full list every time.
- Compare published salary ranges, pay months, experience, degrees, and posting dates.
- Build a public employer-hiring view from company type, industry, scale, and source links.
- Start from exact public Liepin search URLs when a search needs to be repeated.
- Enable full public job descriptions only for runs where listing-level data is not enough.
Who this China jobs data is for
- I am a workforce researcher looking to measure demand and advertised CNY compensation for professional roles in a Chinese city.
- I am a job-data platform manager looking to add traceable public Liepin roles to a China jobs product.
- I am a talent-intelligence analyst looking to identify companies, sectors, and locations hiring for a specialist role.
- I am a market-research consultant looking to compare public role requirements and employer signals without manually reading result pages.
How to use it
|
STEP 1 Choose the source Use featured jobs for a quick run, targeted search for research, or a known public URL. |
STEP 2 Bound the run Set the city, page depth, optional description capture, and a practical result limit. |
STEP 3 Use the evidence Analyze source URLs, salary, requirement, and company fields in your own workflow. |
Input
| Field | Type | Required | Description |
|---|---|---|---|
scrapeMode | enum | Yes | Choose featured jobs, a keyword and city search, or direct public search links. The default is featured jobs. |
keyword | string | No | Keyword for search mode. The default searches for python. |
startUrls | array of URLs | No | Direct public Liepin search links used in direct-link mode. |
city | enum | No | Chinese city or nationwide scope for search mode. The default is Beijing. |
pagesPerQuery | integer | No | Number of search-result pages to inspect in search mode. Each page can contain up to 40 jobs; the default is 3. |
includeJobDetail | boolean | No | Visit public job pages for description text when available. Defaults to off so listing-level research stays efficient. |
monitorMode | enum | No | Snapshot (default) returns every matching job every run. Track changes remembers jobs across runs and returns only new, updated, and removed jobs. |
stateName | string | No | Only used with Track changes. Runs sharing this name track jobs together; use a different name per independent keyword or schedule. |
includeUnchanged | boolean | No | Only used with Track changes. Also emit a row for every job that scraped identically to last run, not just new/updated/removed. |
maxItems | integer | No | Upper limit for rows saved in one run. Defaults to 50 and accepts values from 1 to 5,000. |
proxyConfiguration | object | No | Network-routing settings. Search and direct-link modes use residential proxies by default; featured-jobs mode needs no proxy at all. |
Data you receive
The Actor returns one flat record per public Liepin listing. A field is omitted or null when the source does not publish it.
| Field | Type | Description |
|---|---|---|
jobId | string | Source job identifier. |
title | string | Published job title. |
companyName | string or null | Published employer name. |
salaryString | string or null | Original salary text from the source. |
minSalaryMonthlyCny | number or null | Lower monthly CNY amount when derivable from the source. |
maxSalaryMonthlyCny | number or null | Upper monthly CNY amount when derivable from the source. |
bonusMonths | number or null | Number of salary months published by the source. |
annualEstimateCny | number or null | Annual CNY estimate when derivable from the source. |
salaryDisclosed | boolean | Whether the listing publishes salary information. |
cityName | string or null | Published city. |
districtName | string or null | Published district. |
experienceString | string or null | Original experience requirement. |
experienceEnglish | string or null | English experience label when mapped from the source. |
experienceMinYears | number or null | Minimum required experience in years when parsed. |
experienceMaxYears | number or null | Maximum required experience in years when parsed. |
degreeString | string or null | Original education requirement. |
degreeEnglish | string or null | English education label when mapped from the source. |
companyId | string or null | Source company identifier. |
companyTypeString | string or null | Original company-type label. |
companyTypeEnglish | string or null | English company-type label when mapped from the source. |
companyIndustry | string or null | Published company industry. |
companyScale | string or null | Published employer-size label. |
companyUrl | string or null | Public employer page when published. |
jobKind | number or null | Source job-category identifier. |
jobKindName | string or null | Published job-category label. |
datePosted | string or null | Source posting date. |
descriptionText | string or null | Public job-description text when requested and available. |
listingUrl | string | Search page from which the row was collected. |
jobUrl | string | Public source page for the job. |
sourceLabel | string or null | search/urls for a keyword match, home for a featured-jobs run, or home-board when a blocked search fell back to the featured-jobs board (never a keyword match). |
changeType | string or null | With change tracking on: NEW, UPDATED, UNCHANGED, or REMOVED. Otherwise SNAPSHOT. |
firstSeenAt | string or null | With change tracking on: when this job was first seen under this watchlist name. |
lastSeenAt | string or null | With change tracking on: when this job was last seen matching. |
scrapedAt | string | Time the record was collected. |
Pricing
This is a pay-per-result Actor. You pay for genuine job rows returned to the dataset, not for empty searches, blocked attempts, or failed runs. A REMOVED row from change tracking (a job that disappeared since your last run) is never billed either, since it involved no fresh scrape. There is no subscription. Start with featured jobs or a single targeted search, then increase page depth only when the extra coverage is useful.
View the current usage price and free-test allowance on the Actor page.
โญ Enjoying Liepin Scraper?
|
โญ โญ โญ โญ โญ Found useful white-collar hiring data for your workflow? A 5-star rating takes 10 seconds and helps other workforce researchers and job-data teams find it. Your feedback also tells us what to build next. |
| โ ย ย Rate this Actor on Apify |
FAQ
Can I use this ็่็ฌ่ซ for a keyword and city?
Yes. Choose search mode, enter the role keyword, and select a city. The Actor returns public job rows with the source URL and published fields from the matching results.
Why does a public Liepin job sometimes have no salary or company field?
Liepin does not publish every field on every listing. The Actor keeps a missing source field empty rather than filling it with an invented value.
What happens if Liepin shows an access challenge on part of a run?
A run that collects real jobs from some sources no longer fails just because another source hit an access challenge. The successful rows are still returned, and the challenged source is reported in the run's summary. If a keyword search is challenged and returns nothing at all, the Actor automatically falls back to the public featured-jobs board so you still get real data, with every fallback row clearly labelled home-board so it is never mistaken for a keyword match. A run only fails when nothing usable was collected and no page confirmed a genuinely empty result.
How does change tracking decide a job was removed?
A job is only reported REMOVED after two consecutive complete scans confirm it is gone. This protects against a single access-challenged run falsely reporting real, still-open jobs as removed.
Does this Liepin scraper collect candidate profiles or private contacts?
No. It is for public job listings, salaries, requirements, and employer context. It does not collect candidate profiles or private contact information.
Responsible use
Use public employment data in line with the source terms, applicable law, and your organizationโs privacy obligations. Do not use the output to make decisions about individual candidates.
Support
For a reproducible issue, include the public search link, selected mode, keyword and city, approximate run time, and the run ID. That provides enough context to inspect the source response.