Python SDK
了解如何使用 AI Studio 的 Python SDK。

我们提供一个简单的 Python SDK,用于无缝与 Oxylabs AI Studio API 服务交互,包括 AI-Scraper、AI-Crawler、AI-Browser-Agent 以及其他数据提取工具。
要求
python 3.10 及以上
AI Studio API 密钥
安装
pip install oxylabs-ai-studio用法
爬取 (AiCrawler.crawl)
AiCrawler.crawl)from oxylabs_ai_studio.apps.ai_crawler import AiCrawler
crawler = AiCrawler(api_key="<API_KEY>")
url = "https://oxylabs.io"
result = crawler.crawl(
url=url,
user_prompt="查找所有包含代理产品定价的页面",
output_format="markdown",
render_javascript=False,
return_sources_limit=3,
geo_location="US",
)
print("结果:")
for item in result.data:
print(item, "\n")输入参数
url(str): 起始要爬取的 URL (必需)user_prompt(str): 用于指导提取的自然语言提示 (必需)output_format(Literal["json", "markdown"]): 输出格式(默认: "markdown")schema(dict | None): 用于结构化提取的 OpenAPI 模式(当 output_format 为 "json" 时为必需)render_javascript(bool): 是否渲染 JavaScript(默认: False)return_sources_limit(int): 返回源的最大数量(默认: 25)geo_location(str): 代理位置,使用 ISO2 格式。
抓取 (AiScraper.scrape)
AiScraper.scrape)from oxylabs_ai_studio.apps.ai_scraper import AiScraper
scraper = AiScraper(api_key="<API_KEY>")
schema = scraper.generate_schema(prompt="想解析开发者、平台、类型、价格、游戏标题、流派(数组)和描述")
print(f"生成的模式: {schema}")
url = "https://sandbox.oxylabs.io/products/3"
result = scraper.scrape(
url=url,
output_format="json",
schema=schema,
render_javascript=False,
)
print(result)输入参数
url(str): 要抓取的目标 URL (必需)output_format(Literal["json", "markdown"]): 输出格式(默认: "markdown")schema(dict | None): 用于结构化提取的 OpenAPI 模式(当 output_format 为 "json" 时为必需)render_javascript(bool): 是否渲染 JavaScript(默认: False)geo_location(str): 代理位置,使用 ISO2 格式。
浏览器代理 (BrowserAgent.run)
BrowserAgent.run)from oxylabs_ai_studio.apps.browser_agent import BrowserAgent
browser_agent = BrowserAgent(api_key="<API_KEY>")
schema = browser_agent.generate_schema(
prompt="游戏名称、平台、评分星级和价格"
)
print("模式: ", schema)
prompt = "查找商店中是否有游戏 'super mario odyssey'。如果有,找出其价格。使用搜索栏查找该游戏。"
url = "https://sandbox.oxylabs.io/"
result = browser_agent.run(
url=url,
user_prompt=prompt,
output_format="json",
schema=schema,
)
print(result.data)输入参数
url(str): 起始要浏览的 URL (必需)user_prompt(str): 用于提取的自然语言提示 (必需)output_format(Literal["json", "markdown", "html", "screenshot"]): 输出格式(默认: "markdown")schema(dict | None): 用于结构化提取的 OpenAPI 模式(当 output_format 为 "json" 时为必需)geo_location(str): 代理位置,使用 ISO2 格式。
搜索 (AiSearch.search)
AiSearch.search)from oxylabs_ai_studio.apps.ai_search import AiSearch
search = AiSearch(api_key="<API_KEY>")
query = "千层面 食谱"
result = search.search(
query=query,
limit=5,
render_javascript=False,
return_content=True,
)
print(result.data)输入参数
query(str): 搜索内容 (必需)limit(int): 要返回的最大结果数(默认: 10,最大: 50)render_javascript(bool): 是否渲染 JavaScript(默认: False)return_content(bool): 是否在结果中返回 markdown 内容(默认: True)geo_location(str): 搜索代理位置,使用 ISO2 格式。
地图 (AiMap.map)
AiMap.map)from oxylabs_ai_studio.apps.ai_map import AiMap
ai_map = AiMap(api_key="<API_KEY>")
payload = {
"url": "https://career.oxylabs.io",
"user_prompt": "职位广告页面",
"return_sources_limit": 10,
"geo_location": None,
"render_javascript": False,
}
result = ai_map.map(**payload)
print(result.data)输入参数
url(str): 起始要爬取的 URL (必需)user_prompt(str): 用于指导提取的自然语言提示 (必需)render_javascript(bool): 是否渲染 JavaScript(默认: False)return_sources_limit(int): 返回源的最大数量(默认: 25)geo_location(str): 代理位置,使用 ISO2 格式。
使用示例
参见 示例 文件夹以获取每个方法的使用示例。
每个方法都有对应的异步版本。
最后更新于
这有帮助吗?

