An ergonomic way to use Metaphor in python.
Install metaphor-python
via pip:
pip install metaphor-python
Import the package and initialize the Metaphor client with your API key:
from metaphor_python import Metaphor
client = Metaphor(api_key="your-api-key")
response = client.search("funny article about tech culture",
num_results=5,
include_domains=["nytimes.com", "wsj.com"],
start_published_date="2023-06-12"
)
for result in response.results:
print(result.title, result.url)
response = client.find_similar("https://waitbutwhy.com/2014/05/fermi-paradox.html", num_results=5)
for result in response.results:
print(result.title, result.url)
ids = ["8U71IlQ5DUTdsZFherhhYA", "X3wd0PbJmAvhu_DQjDKA7A"]
response = client.get_contents(ids)
for content in response.contents:
print(content.title, content.url)
This function performs a search on the Metaphor API.
- query (str): The search query.
- options: Additional search options. Valid options are:
num_results
(int): The number of search results to return.include_domains
(list): A list of domains to include in the search.exclude_domains
(list): A list of domains to exclude from the search.start_crawl_date
(str): The start date for the crawl (in YYYY-MM-DD format).end_crawl_date
(str): The end date for the crawl (in YYYY-MM-DD format).start_published_date
(str): The start date for when the document was published (in YYYY-MM-DD format).end_published_date
(str): The end date for when the document was published (in YYYY-MM-DD format).use_autoprompt
(bool): Whether to use autoprompt for the search.type
(str): The type of document to search for.
SearchResponse
: A dataclass containing the search results.
- url (str): The base url to find similar links with.
- options: Additional search options. Valid options are:
num_results
(int): The number of search results to return.include_domains
(list): A list of domains to include in the search.exclude_domains
(list): A list of domains to exclude from the search.start_crawl_date
(str): The start date for the crawl (in YYYY-MM-DD format).end_crawl_date
(str): The end date for the crawl (in YYYY-MM-DD format).start_published_date
(str): The start date for when the document was published (in YYYY-MM-DD format).end_published_date
(str): The end date for when the document was published (in YYYY-MM-DD format).
SearchResponse
: A dataclass containing the search results.
Contributions to metaphor-python are very welcome! Feel free to submit pull requests or raise issues.