# Web3.Career Jobs Scraper - Crypto Hiring Data (`benthepythondev/web3career-jobs-scraper`) Actor

Scrape Web3.Career jobs: title, company, location, remote flag, category, tags, salary, posted date, job URL and description.

- **URL**: https://apify.com/benthepythondev/web3career-jobs-scraper.md
- **Developed by:** [Ben](https://apify.com/benthepythondev) (community)
- **Categories:** Jobs, Business, Lead generation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $2.40 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## ₿ Web3.Career Jobs Scraper - Crypto Hiring Data

Scrape job listings from **Web3.Career** in one run. Get job titles, companies, locations, remote flags, categories, tags, salary metadata, posted dates, direct job URLs, company logos and cleaned descriptions from Web3.Career search pages. Export to JSON/CSV/Excel, run on a schedule, call via API, or connect to Make, Zapier or n8n.

### 🔎 What is the Web3.Career Jobs Scraper?

Web3.Career is a crypto, blockchain and Web3 job board covering engineering, trading, compliance, marketing, operations, community, product and finance roles. This actor turns public Web3.Career search/category pages into structured data for recruiting, market research, job aggregation and sales intelligence.

The actor uses plain HTTP and parses the job data already embedded on the page in schema.org `JobPosting` blocks plus the visible job table. It does not require a browser, login, proxy or API key.

#### What data does it extract?

- **Job title** - role name from Web3.Career.
- **Company** - hiring organization name and logo when available.
- **Location and remote flag** - location text plus telecommute signal.
- **Employment type and category** - job classification when exposed.
- **Tags** - visible Web3.Career tags such as remote or role category.
- **Salary** - salary range when exposed in structured data.
- **Posted and valid-through dates** - useful for freshness monitoring.
- **Direct job URL** - Web3.Career listing URL.
- **Description** - cleaned job description text, optional for smaller datasets.
- **Stable ID** - extracted from the listing row or URL.

### ⬇️ Input

| Field | Type | Description |
| --- | --- | --- |
| `searchUrls` | array | Web3.Career search/category URLs. Leave empty for remote Web3 jobs. |
| `keyword` | string | Optional keyword used to build a Web3.Career jobs URL. |
| `includeDescriptions` | boolean | Include cleaned descriptions in the output. |
| `maxResults` | integer | Maximum jobs to return. |

#### Example input

```json
{
  "searchUrls": ["https://web3.career/remote-jobs"],
  "includeDescriptions": true,
  "maxResults": 50
}
```

Keyword search:

```json
{
  "keyword": "solidity",
  "maxResults": 25
}
```

### ⬆️ Output

Each dataset item is one Web3.Career job listing.

```json
{
  "id": "151023",
  "title": "Concierge Agent",
  "company": "Tastylive",
  "location": "Remote",
  "is_remote": true,
  "employment_type": "FULL_TIME",
  "industry": "Blockchain",
  "category": "Customer Support",
  "tags": ["remote"],
  "salary": "USD 80000-120000 YEAR",
  "posted_date": "2026-07-02 19:06:12 +0100",
  "valid_through": "2026-08-01",
  "job_url": "https://web3.career/concierge-agent-tastylive/151023",
  "company_logo": "",
  "description": "Company Name: tastytrade Role: Concierge Agent...",
  "description_short": "Company Name: tastytrade Role: Concierge Agent...",
  "source": "web3career"
}
```

### 💡 Use cases

- **Crypto recruiting** - monitor Web3 companies hiring engineers, compliance teams, traders, marketers and operations staff.
- **Sales triggers** - hiring activity can signal growth, budget, expansion or operational pain.
- **Job aggregation** - add crypto/web3 roles to a broader job-board dataset.
- **Market research** - track hiring demand across Web3 categories, locations and remote roles.
- **Investor intelligence** - monitor portfolio or competitor hiring velocity.
- **Automation** - send new Web3 roles to Airtable, Google Sheets, HubSpot, Clay, Make, Zapier or n8n.

### 🧭 How to use the data

Use `id` or `job_url` as the deduplication key. For recurring monitoring, run the actor daily and compare new rows against previous datasets. For narrower coverage, paste Web3.Career category URLs or provide a keyword such as `solidity`, `defi`, `trading`, `marketing`, `compliance`, `security` or `remote`.

This actor is especially useful alongside general job-board actors. Pair it with Ashby, Recruitee, Workable, SmartRecruiters, StepStone and Working Nomads to capture both company career pages and specialized crypto job-board demand.

Descriptions can be long. Disable `includeDescriptions` when you only need lightweight lead records with title, company, URL, date, tags and salary.

### 📈 Common workflows

Recruiting teams can schedule the actor against role-specific URLs such as Solidity, protocol engineering, compliance, trading operations or product marketing, then send new matches into a CRM or applicant-sourcing spreadsheet. Sales teams can monitor companies that are hiring for infrastructure, finance, support or compliance roles and use those openings as expansion or buying-intent signals. Analysts can track hiring velocity by company, category or remote status to understand where Web3 teams are still investing.

For a simple daily workflow, run the actor once per morning with `maxResults` set to your expected volume, store the output in a dataset, and compare `id` values against yesterday's run. New rows can trigger Slack alerts, email digests, lead enrichment, or downstream automations in Clay, HubSpot, Airtable, Make, Zapier or n8n.

### ❓ FAQ

**Does this require a Web3.Career account?** No. It reads public job listing pages.

**Does it use a browser?** No. It fetches HTML directly and parses embedded structured job data.

**Can I scrape category URLs?** Yes. Paste Web3.Career search or category URLs in `searchUrls`.

**Can I search by keyword?** Yes. The `keyword` field builds a Web3.Career jobs URL for that keyword.

**Does it include salary?** When Web3.Career exposes salary in structured data, the actor returns a readable salary string.

**Does it include direct job URLs?** Yes. The actor combines structured data with the visible table rows to recover listing URLs.

**Is this good for lead generation?** Yes. Web3 hiring activity is a strong signal for recruiting, compliance, finance, security, infrastructure and B2B SaaS workflows.

**How often should I run it?** Daily is usually enough for monitoring new listings.

**Is it legal to scrape Web3.Career jobs?** The actor collects publicly available job postings. You are responsible for using the output lawfully and respecting privacy, employment, anti-spam and platform rules.

**How do I avoid duplicates?** Use `id` or `job_url` as your stable key.

### 🔗 You might also like

- [Working Nomads Jobs Scraper](https://apify.com/benthepythondev/workingnomads-jobs-scraper)
- [Ashby Jobs Scraper](https://apify.com/benthepythondev/ashby-jobs-scraper)
- [Recruitee Jobs Scraper](https://apify.com/benthepythondev/recruitee-jobs-scraper)
- [Workable Jobs Scraper](https://apify.com/benthepythondev/workable-jobs-scraper)
- [SmartRecruiters Jobs Scraper](https://apify.com/benthepythondev/smartrecruiters-jobs-scraper)
- [StepStone Scraper](https://apify.com/benthepythondev/stepstone-scraper)

**Keywords:** Web3.Career scraper, Web3 Career jobs scraper, crypto jobs scraper, blockchain jobs scraper, Web3 hiring data, scrape Web3.Career, remote crypto jobs, Solidity jobs scraper, DeFi jobs scraper, crypto recruiting leads, blockchain job board API, job postings scraper, hiring intelligence, recruiting automation, Apify jobs scraper.

### Support and feedback

If this Actor saves time in your workflow, please leave a short Apify Store review. Reviews help other users evaluate the tool and help prioritize maintenance. If a source changes or a field stops populating, open an Actor issue with the run ID, public input, and expected field. Never include passwords, private cookies, or confidential data.

# Actor input Schema

## `searchUrls` (type: `array`):

Web3.Career search/category URLs. Leave empty for remote Web3 jobs.

## `keyword` (type: `string`):

Optional keyword used to build a Web3.Career jobs URL, for example solidity, marketing, defi or remote.

## `includeDescriptions` (type: `boolean`):

Include cleaned job descriptions in the output.

## `maxResults` (type: `integer`):

Maximum jobs to return.

## Actor input object example

```json
{
  "searchUrls": [
    "https://web3.career/remote-jobs"
  ],
  "keyword": "remote",
  "includeDescriptions": true,
  "maxResults": 10
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "searchUrls": [
        "https://web3.career/remote-jobs"
    ],
    "keyword": "remote",
    "maxResults": 10
};

// Run the Actor and wait for it to finish
const run = await client.actor("benthepythondev/web3career-jobs-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "searchUrls": ["https://web3.career/remote-jobs"],
    "keyword": "remote",
    "maxResults": 10,
}

# Run the Actor and wait for it to finish
run = client.actor("benthepythondev/web3career-jobs-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "searchUrls": [
    "https://web3.career/remote-jobs"
  ],
  "keyword": "remote",
  "maxResults": 10
}' |
apify call benthepythondev/web3career-jobs-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=benthepythondev/web3career-jobs-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/OkIZuGlBINFxHeerE/builds/grVRKuaOj5v5w3Ljd/openapi.json
