BioSpace Jobs Scraper avatar

BioSpace Jobs Scraper

Pricing

from $0.05 / 1,000 apify-default-dataset-item extracteds

Go to Apify Store
BioSpace Jobs Scraper

BioSpace Jobs Scraper

Extract BioSpace job listings, companies, locations, summaries, descriptions, apply links, and posting metadata from public BioSpace pages.

Pricing

from $0.05 / 1,000 apify-default-dataset-item extracteds

Rating

0.0

(0)

Developer

Stas Persiianenko

Stas Persiianenko

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

9 days ago

Last modified

Categories

Share

Extract public BioSpace job listings for biotech, pharma, and life-sciences hiring intelligence.

What does BioSpace Jobs Scraper do?

BioSpace Jobs Scraper turns public BioSpace search and job-detail pages into structured datasets.

It collects job titles, companies, locations, listing summaries, full descriptions, BioSpace job URLs, apply URLs, company links, logo URLs, posting timestamps, expiration timestamps, source URLs, and scrape timestamps.

Use it when you need a repeatable BioSpace jobs extractor without manually copying pages into spreadsheets.

Who is it for?

Recruiters

Track specialized life-sciences openings by keyword and export candidate-market signals.

Sales teams

Monitor which biotech and pharma companies are hiring for roles that indicate budget, growth, or pipeline activity.

Market intelligence teams

Build recurring datasets about hiring demand across therapeutic areas, research functions, and locations.

Data teams

Feed BioSpace job records into CRM enrichment, lead scoring, dashboards, and alerting workflows.

Why use this actor?

  • ๐Ÿ”Ž Search BioSpace by keyword, role, skill, or company.
  • ๐Ÿงฌ Extract life-sciences specific hiring signals from a niche jobs board.
  • ๐Ÿ“„ Enrich listings with full job descriptions from detail pages.
  • ๐Ÿ”— Save direct job, apply, company, and logo URLs.
  • โฑ๏ธ Run on demand or schedule recurring monitoring.
  • ๐Ÿ“ฆ Export results as JSON, CSV, Excel, XML, RSS, or via API.

Data you can extract

FieldDescription
jobIdBioSpace posting identifier
titleJob title
companyHiring company or recruiter
locationListed job location
summaryShort listing summary
descriptionFull job description from the detail page
jobUrlCanonical BioSpace job URL
applyUrlBioSpace apply URL when available
companyUrlBioSpace company or employer profile URL
logoUrlCompany logo asset URL
postedAtPosting timestamp when exposed by BioSpace metadata
expiresAtExpiration timestamp when exposed by BioSpace metadata
sourceUrlPage that produced the record
sourceTypesearch or detail
sourceQueryKeyword query used for discovery
scrapedAtISO timestamp for extraction

How much does it cost to scrape BioSpace jobs?

This actor uses pay-per-event pricing.

  • Start event: small one-time run fee.
  • Item event: one charge per saved BioSpace job record.
  • Larger paid Apify plans receive lower per-item prices through tiered pricing.

Use a small maxItems value for smoke tests, then scale once the output matches your workflow.

How to scrape BioSpace jobs

  1. Open the actor on Apify.
  2. Enter a keyword such as scientist, oncology, bioinformatics, or a company name.
  3. Set maxItems to the number of jobs you need.
  4. Keep scrapeDetails enabled when you need full descriptions and apply links.
  5. Run the actor.
  6. Download the dataset or connect it to your workflow.

Input options

keywords

Search keyword, role, skill, company name, or hiring signal.

Example: scientist

startUrls

Optional BioSpace search result pages or individual job detail URLs.

Examples:

  • https://jobs.biospace.com/jobs/?keywords=scientist
  • https://jobs.biospace.com/job/3053244/scientist-sr-scientist-research/

maxItems

Maximum number of job records to save.

scrapeDetails

When enabled, the actor opens each BioSpace job detail page and extracts the long description, apply URL, and posting metadata.

{
"keywords": "scientist",
"maxItems": 100,
"scrapeDetails": true
}

Example input: BioSpace URL list

{
"startUrls": [
{ "url": "https://jobs.biospace.com/jobs/?keywords=bioinformatics" },
{ "url": "https://jobs.biospace.com/job/3053244/scientist-sr-scientist-research/" }
],
"maxItems": 50,
"scrapeDetails": true
}

Example output

{
"jobId": "3053244",
"title": "Scientist / Sr. Scientist, Research",
"company": "Visterra, Inc.",
"location": "Waltham, Massachusetts",
"summary": "The Opportunity We are seeking a highly motivated Scientist...",
"description": "The Opportunity We are seeking a highly motivated Scientist...",
"jobUrl": "https://jobs.biospace.com/job/3053244/scientist-sr-scientist-research/",
"applyUrl": "https://jobs.biospace.com/logon?...",
"companyUrl": "https://jobs.biospace.com/employer/...",
"logoUrl": "https://jobs.biospace.com/getasset/...",
"postedAt": "2026-06-05T04:59:50.973Z",
"expiresAt": "2026-07-06T03:59:59.000Z",
"sourceUrl": "https://jobs.biospace.com/job/3053244/scientist-sr-scientist-research/",
"sourceType": "detail",
"sourceQuery": "scientist",
"scrapedAt": "2026-07-03T05:28:52.292Z"
}

Tips for better results

  • ๐Ÿงช Use targeted keywords like clinical scientist, oncology, CMC, or bioinformatics.
  • ๐Ÿข Search by company name when tracking specific accounts.
  • ๐Ÿ“‰ Disable scrapeDetails for faster lightweight listing monitoring.
  • ๐Ÿ“ˆ Enable scrapeDetails when building CRM or market-intel records.
  • ๐Ÿ” Schedule daily or weekly runs to monitor new postings.

Integrations

CRM enrichment

Send BioSpace hiring signals into Salesforce, HubSpot, Airtable, or Clay.

Sales intelligence

Trigger alerts when target biotech accounts post jobs in commercial, clinical, or R&D functions.

Market dashboards

Load records into BigQuery, Snowflake, Google Sheets, or a BI tool for trend analysis.

Recruiting operations

Export specialized job postings to internal sourcing dashboards or talent-market reports.

API usage with Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('automation-lab/biospace-jobs-scraper').call({
keywords: 'scientist',
maxItems: 100,
scrapeDetails: true,
});
console.log(run.defaultDatasetId);

API usage with Python

from apify_client import ApifyClient
import os
client = ApifyClient(os.environ['APIFY_TOKEN'])
run = client.actor('automation-lab/biospace-jobs-scraper').call(run_input={
'keywords': 'bioinformatics',
'maxItems': 100,
'scrapeDetails': True,
})
print(run['defaultDatasetId'])

API usage with cURL

curl "https://api.apify.com/v2/acts/automation-lab~biospace-jobs-scraper/runs?token=$APIFY_TOKEN" \
-H 'Content-Type: application/json' \
-d '{"keywords":"scientist","maxItems":100,"scrapeDetails":true}'

MCP usage

Connect this actor to Apify MCP so Claude Desktop or Claude Code can run BioSpace job extraction directly.

Add it in Claude Code:

$claude mcp add apify-biospace-jobs https://mcp.apify.com/?tools=automation-lab/biospace-jobs-scraper

Claude Desktop JSON configuration:

{
"mcpServers": {
"apify-biospace-jobs": {
"url": "https://mcp.apify.com/?tools=automation-lab/biospace-jobs-scraper"
}
}
}

MCP URL:

https://mcp.apify.com/?tools=automation-lab/biospace-jobs-scraper

Example prompts:

  • "Run the BioSpace Jobs Scraper for oncology scientist jobs and summarize hiring companies."
  • "Extract 100 BioSpace bioinformatics jobs and group them by location."
  • "Monitor BioSpace for new clinical operations postings every week."

Scheduling

Use Apify schedules to run recurring BioSpace searches.

Common schedules:

  • Daily for active sales alerts.
  • Weekly for market reports.
  • Monthly for historical trend snapshots.

Limitations

BioSpace controls its public pages and may change HTML structure, URLs, or metadata fields.

Some apply links may lead to BioSpace login or application flows.

The actor extracts public job data only and does not bypass login-only account features.

FAQ

Why did I get fewer jobs than expected?

BioSpace may have fewer matching postings for a narrow keyword. Try a broader keyword or provide a search URL with more results.

Why is applyUrl a BioSpace login URL?

Some application flows require a BioSpace job seeker session. The actor records the public apply entry URL when it is exposed.

Why are some timestamps empty?

Posting and expiration timestamps are available when BioSpace exposes Open Graph article metadata on the job detail page.

Legality and responsible use

This actor collects publicly available BioSpace job posting pages. You are responsible for using exported data in compliance with applicable laws, BioSpace terms, and your internal policies.

Do not use the actor to collect private account data or bypass access controls.

Explore related automation-lab actors for recruiting, lead generation, and company monitoring:

Change monitoring workflow

Run the same keyword on a schedule and compare datasets by jobId.

New jobId values indicate newly discovered postings.

Expired or missing jobs can indicate closed requisitions.

Data quality workflow

Use jobUrl as the stable row URL.

Use jobId as the stable BioSpace identifier.

Use scrapedAt to partition recurring exports.

Performance notes

With scrapeDetails disabled, the actor only processes search listing pages and runs faster.

With scrapeDetails enabled, the actor visits each job detail page for richer records.

Support

If a BioSpace page format changes or you need additional fields, open an issue on the actor page with an example input and run URL.