jobsparser


Namejobsparser JSON
Version 0.1.3 PyPI version JSON
download
home_pageNone
SummaryCLI tool to scrape jobs from multiple job sites
upload_time2025-01-21 08:26:28
maintainerNone
docs_urlNone
authorFranciscoMoretti
requires_python>=3.10
licenseNone
keywords cli glassdoor indeed jobs linkedin scraping
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # jobsparser

A simple CLI tool to scrape jobs from multiple job sites (LinkedIn, Indeed, Glassdoor) using [JobSpy](https://github.com/Bunsly/JobSpy).

## Installation

From PyPI (coming soon):
```bash
pip install jobsparser
```

From source:
```bash
git clone https://github.com/fran/jobsparser
cd jobsparser
pip install .
```

## Usage

Basic usage:
```bash
jobsparser --search-term "Python Developer" --location "London"
```

Use multiple job sites:
```bash
jobsparser --search-term "Frontend Engineer" --location "Remote" --site linkedin --site indeed
```

Advanced usage:
```bash
jobsparser \
    --search-term "Data Scientist" \
    --location "New York" \
    --site linkedin --site indeed --site glassdoor \
    --results-wanted 200 \
    --distance 50 \
    --job-type fulltime \
    --output-dir "my_jobs"
```

See all options:
```bash
jobsparser --help
```

## Features

- Scrape jobs from LinkedIn, Indeed, and Glassdoor
- Customizable search parameters:
  - Job type (fulltime, parttime, contract, internship)
  - Search radius (distance)
  - Number of results
  - Location and country
- Automatic retries and rate limiting
- CSV output with unique filenames
- Progress tracking and status updates

## Options

- `--search-term`: Job search query (required)
- `--location`: Job location (required)
- `--site`: Job sites to search (default: linkedin)
- `--results-wanted`: Total number of results (default: 100)
- `--distance`: Search radius in miles/km (default: 25)
- `--job-type`: Type of job (default: fulltime)
- `--country`: Country code for Indeed search (default: UK)
- `--fetch-description`: Fetch full job description (default: true)
- `--batch-size`: Results per batch (default: 30)
- `--sleep-time`: Base sleep time between batches (default: 100)
- `--output-dir`: Directory for CSV files (default: data)

## License

MIT License - see [LICENSE](LICENSE) for details.
            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "jobsparser",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": null,
    "keywords": "cli, glassdoor, indeed, jobs, linkedin, scraping",
    "author": "FranciscoMoretti",
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/ec/07/689596d02883a0ab0f7c8b3e5c7f1a4ffd77e6bea443aad03d135f70f90a/jobsparser-0.1.3.tar.gz",
    "platform": null,
    "description": "# jobsparser\n\nA simple CLI tool to scrape jobs from multiple job sites (LinkedIn, Indeed, Glassdoor) using [JobSpy](https://github.com/Bunsly/JobSpy).\n\n## Installation\n\nFrom PyPI (coming soon):\n```bash\npip install jobsparser\n```\n\nFrom source:\n```bash\ngit clone https://github.com/fran/jobsparser\ncd jobsparser\npip install .\n```\n\n## Usage\n\nBasic usage:\n```bash\njobsparser --search-term \"Python Developer\" --location \"London\"\n```\n\nUse multiple job sites:\n```bash\njobsparser --search-term \"Frontend Engineer\" --location \"Remote\" --site linkedin --site indeed\n```\n\nAdvanced usage:\n```bash\njobsparser \\\n    --search-term \"Data Scientist\" \\\n    --location \"New York\" \\\n    --site linkedin --site indeed --site glassdoor \\\n    --results-wanted 200 \\\n    --distance 50 \\\n    --job-type fulltime \\\n    --output-dir \"my_jobs\"\n```\n\nSee all options:\n```bash\njobsparser --help\n```\n\n## Features\n\n- Scrape jobs from LinkedIn, Indeed, and Glassdoor\n- Customizable search parameters:\n  - Job type (fulltime, parttime, contract, internship)\n  - Search radius (distance)\n  - Number of results\n  - Location and country\n- Automatic retries and rate limiting\n- CSV output with unique filenames\n- Progress tracking and status updates\n\n## Options\n\n- `--search-term`: Job search query (required)\n- `--location`: Job location (required)\n- `--site`: Job sites to search (default: linkedin)\n- `--results-wanted`: Total number of results (default: 100)\n- `--distance`: Search radius in miles/km (default: 25)\n- `--job-type`: Type of job (default: fulltime)\n- `--country`: Country code for Indeed search (default: UK)\n- `--fetch-description`: Fetch full job description (default: true)\n- `--batch-size`: Results per batch (default: 30)\n- `--sleep-time`: Base sleep time between batches (default: 100)\n- `--output-dir`: Directory for CSV files (default: data)\n\n## License\n\nMIT License - see [LICENSE](LICENSE) for details.",
    "bugtrack_url": null,
    "license": null,
    "summary": "CLI tool to scrape jobs from multiple job sites",
    "version": "0.1.3",
    "project_urls": {
        "Repository": "https://github.com/fran/jobsparser"
    },
    "split_keywords": [
        "cli",
        " glassdoor",
        " indeed",
        " jobs",
        " linkedin",
        " scraping"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "d2323a666e7bfb0d5016fcecf89bb6bfe5d6db165eba77961dfaf3099a0cf2a2",
                "md5": "1c51c4dd7fbe5fd62398f541c316bb88",
                "sha256": "87e76c37887d2cad080cff7a3cdae9fb3a6b49221557465fa6d481797756d99c"
            },
            "downloads": -1,
            "filename": "jobsparser-0.1.3-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "1c51c4dd7fbe5fd62398f541c316bb88",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 4841,
            "upload_time": "2025-01-21T08:26:27",
            "upload_time_iso_8601": "2025-01-21T08:26:27.954232Z",
            "url": "https://files.pythonhosted.org/packages/d2/32/3a666e7bfb0d5016fcecf89bb6bfe5d6db165eba77961dfaf3099a0cf2a2/jobsparser-0.1.3-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ec07689596d02883a0ab0f7c8b3e5c7f1a4ffd77e6bea443aad03d135f70f90a",
                "md5": "a438575bc2118aa6ccaf87ce2c86e4d2",
                "sha256": "b51c5edd1c2cfbf2fb0594f460c2dc2411e95992af0def0a26063d77311c8422"
            },
            "downloads": -1,
            "filename": "jobsparser-0.1.3.tar.gz",
            "has_sig": false,
            "md5_digest": "a438575bc2118aa6ccaf87ce2c86e4d2",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 12549,
            "upload_time": "2025-01-21T08:26:28",
            "upload_time_iso_8601": "2025-01-21T08:26:28.996685Z",
            "url": "https://files.pythonhosted.org/packages/ec/07/689596d02883a0ab0f7c8b3e5c7f1a4ffd77e6bea443aad03d135f70f90a/jobsparser-0.1.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-01-21 08:26:28",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "fran",
    "github_project": "jobsparser",
    "github_not_found": true,
    "lcname": "jobsparser"
}
        
Elapsed time: 2.39441s