> ## Documentation Index
> Fetch the complete documentation index at: https://mintlify.com/speedyapply/JobSpy/llms.txt
> Use this file to discover all available pages before exploring further.

# FAQ

> Frequently asked questions about JobSpy

<AccordionGroup>
  <Accordion title="Why is Indeed returning unrelated job roles?">
    Indeed searches the job description text as well as the title. To get more targeted results, use precise query syntax:

    * Use `-` to exclude words
    * Use `""` for an exact match
    * Use `OR` for alternatives

    ```python theme={null}
    search_term='"engineering intern" software summer (java OR python OR c++) 2025 -tax -marketing'
    ```

    This query requires the description or title to include `software`, `summer`, `2025`, at least one of the listed languages, and the exact phrase `engineering intern` — while excluding any mention of `tax` or `marketing`.
  </Accordion>

  <Accordion title="Why am I getting no results when using Google?">
    Google Jobs requires very specific query syntax. To get the right value for `google_search_term`:

    1. Open Google Jobs in your browser.
    2. Apply the filters you want (location, date posted, etc.).
    3. Copy the exact text that appears in the Google Jobs search box.
    4. Pass that string as `google_search_term` in your `scrape_jobs()` call.

    <Note>
      `google_search_term` is separate from `search_term`. For Google, only `google_search_term` is used for filtering.
    </Note>
  </Accordion>

  <Accordion title="What does response code 429 mean?">
    A `429` status code means the job board has rate limited your requests because you sent too many in a short period. To work around this:

    * Wait between scrapes (the required delay varies by site).
    * Use the `proxies` parameter to rotate your IP address:

    ```python theme={null}
    jobs = scrape_jobs(
        site_name="linkedin",
        search_term="data engineer",
        proxies=["user:pass@host:port", "localhost"],
    )
    ```
  </Accordion>

  <Accordion title="How many results can I get per search?">
    All job board endpoints are capped at approximately 1,000 jobs per search. The `results_wanted` parameter controls how many results you retrieve up to that limit.

    You cannot retrieve more than \~1,000 results for any single search, regardless of `results_wanted`.
  </Accordion>

  <Accordion title="Which job board has the least rate limiting?">
    Indeed is currently the best-performing scraper with minimal rate limiting. LinkedIn is the most restrictive — it typically rate limits around the 10th page with a single IP address, making proxies strongly recommended.
  </Accordion>

  <Accordion title="Why does LinkedIn rate limit so quickly?">
    LinkedIn enforces strict rate limits and typically blocks further requests around the 10th page of results when using a single IP. Using the `proxies` parameter to rotate IP addresses is strongly recommended for any LinkedIn scraping beyond a small number of results.
  </Accordion>

  <Accordion title="How does results_wanted work?">
    `results_wanted` sets the number of results to retrieve **per site**. For example, if you set `results_wanted=20` and pass three sites in `site_name`, you could receive up to 60 total results.
  </Accordion>

  <Accordion title="What Python version do I need?">
    Python 3.10 or higher is required. You can check your version by running:

    ```bash theme={null}
    python --version
    ```

    If you need to upgrade, download the latest release from [python.org](https://www.python.org/downloads/).
  </Accordion>

  <Accordion title="Does easy_apply work on LinkedIn?">
    No. The LinkedIn easy apply filter is no longer reliable and does not work consistently. Passing `easy_apply=True` when scraping LinkedIn will not produce accurate results.
  </Accordion>

  <Accordion title="How do I search for jobs in a specific country on Indeed?">
    Use the `country_indeed` parameter with the country name string. For example:

    ```python theme={null}
    jobs = scrape_jobs(
        site_name="indeed",
        search_term="software engineer",
        country_indeed="Canada",
    )
    ```

    See the [supported countries](/introduction#supported-job-boards) list for valid values. The string is case-insensitive.
  </Accordion>

  <Accordion title="Can I combine job_type and hours_old on Indeed?">
    No. On Indeed, you can only use **one** of the following per search:

    * `hours_old`
    * `job_type` or `is_remote`
    * `easy_apply`

    Combining more than one of these filters in the same Indeed query will not work as expected.
  </Accordion>
</AccordionGroup>
