hired.search.facade#

Main facade for job search functionality.

Classes

JobSources([registry])

Main facade for accessing job search sources.

class hired.search.facade.JobSources(registry=None)[source]#

Bases: object

Main facade for accessing job search sources.

Provides both mapping interface (dict-like access) and attribute access to registered job sources.

Examples

>>> sources = JobSources()
>>> # List all available sources
>>> sources.list()
['jobspy', 'usajobs', 'adzuna']
>>> # Access via attribute
>>> results = sources.jobspy.search(SearchCriteria(query="python developer"))
>>> # Access via mapping
>>> results = sources['indeed'].search(SearchCriteria(query="data scientist"))
>>> # Search across multiple sources
>>> results = sources.search_all(
...     SearchCriteria(query="software engineer", location="San Francisco")
... )
get_info(name)[source]#

Get information about a source.

Parameters:

name (str) – Name of the source

Return type:

Dict[str, Any]

Returns:

Dictionary with source information including setup instructions

get_source(name)[source]#

Get a source by name.

Parameters:

name (str) – Name of the source

Return type:

JobSearchSource

Returns:

JobSearchSource instance

Raises:

KeyError – If source not found

keys()[source]#

Get list of source names (dict-like interface).

Return type:

List[str]

list()[source]#

List all registered sources.

Return type:

List[str]

Returns:

List of source names

list_available()[source]#

List sources that are configured and ready to use.

Return type:

List[str]

Returns:

List of configured source names

list_unconfigured()[source]#

List sources that need configuration.

Return type:

List[str]

Returns:

List of unconfigured source names

print_status()[source]#

Print the status of all registered sources.

Return type:

None

search(source_name, criteria)[source]#

Search using a specific source.

Parameters:
  • source_name (str) – Name of the source to use

  • criteria (SearchCriteria) – Search criteria

Return type:

List[JobResult]

Returns:

List of JobResult objects

search_all(criteria, sources=None, skip_unconfigured=True)[source]#

Search across multiple sources.

Parameters:
  • criteria (SearchCriteria) – Search criteria

  • sources (Optional[List[str]]) – Optional list of source names. If None, uses all available sources.

  • skip_unconfigured (bool) – If True, skip sources that are not configured

Return type:

List[JobResult]

Returns:

Combined list of JobResult objects from all sources