Add Activepieces integration for workflow automation
- Add Activepieces fork with SmoothSchedule custom piece - Create integrations app with Activepieces service layer - Add embed token endpoint for iframe integration - Create Automations page with embedded workflow builder - Add sidebar visibility fix for embed mode - Add list inactive customers endpoint to Public API - Include SmoothSchedule triggers: event created/updated/cancelled - Include SmoothSchedule actions: create/update/cancel events, list resources/services/customers 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
{
|
||||
"extends": [
|
||||
"../../../../.eslintrc.base.json"
|
||||
],
|
||||
"ignorePatterns": [
|
||||
"!**/*"
|
||||
],
|
||||
"overrides": [
|
||||
{
|
||||
"files": [
|
||||
"*.ts",
|
||||
"*.tsx",
|
||||
"*.js",
|
||||
"*.jsx"
|
||||
],
|
||||
"rules": {}
|
||||
},
|
||||
{
|
||||
"files": [
|
||||
"*.ts",
|
||||
"*.tsx"
|
||||
],
|
||||
"rules": {}
|
||||
},
|
||||
{
|
||||
"files": [
|
||||
"*.js",
|
||||
"*.jsx"
|
||||
],
|
||||
"rules": {}
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
# ScrapeGraphAI
|
||||
|
||||
## Description
|
||||
ScrapeGraphAI is a powerful web scraping and content extraction API. This piece enables integration with ScrapeGraphAI's API to perform smart scraping, local scraping, and markdown conversion.
|
||||
|
||||
## Actions
|
||||
1. **Smart Scraper**: Advanced web scraping with AI-powered content extraction
|
||||
- Automatic content detection
|
||||
- Clean HTML output
|
||||
- Support for dynamic websites
|
||||
- Configurable options for content types
|
||||
|
||||
2. **Local Scraper**: Fast and lightweight web scraping
|
||||
- Basic content extraction
|
||||
- Static website support
|
||||
- Configurable selectors
|
||||
- Resource-efficient
|
||||
|
||||
3. **Markdownify**: Convert web content to clean Markdown
|
||||
- Clean and formatted markdown output
|
||||
- Preserves content structure
|
||||
- Handles various content types
|
||||
- Customizable output options
|
||||
|
||||
## Authentication
|
||||
This piece requires an API key from ScrapeGraphAI. To obtain your API key:
|
||||
1. Visit https://scrapegraphai.com
|
||||
2. Sign up for an account
|
||||
3. Navigate to your dashboard
|
||||
4. Copy your API key
|
||||
|
||||
## Requirements
|
||||
- ScrapeGraphAI API Key
|
||||
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"name": "@activepieces/piece-scrapegrapghai",
|
||||
"version": "0.0.8"
|
||||
}
|
||||
@@ -0,0 +1,65 @@
|
||||
{
|
||||
"name": "pieces-scrapegrapghai",
|
||||
"$schema": "../../../../node_modules/nx/schemas/project-schema.json",
|
||||
"sourceRoot": "packages/pieces/community/scrapegrapghai/src",
|
||||
"projectType": "library",
|
||||
"release": {
|
||||
"version": {
|
||||
"currentVersionResolver": "git-tag",
|
||||
"preserveLocalDependencyProtocols": false,
|
||||
"manifestRootsToUpdate": [
|
||||
"dist/{projectRoot}"
|
||||
]
|
||||
}
|
||||
},
|
||||
"tags": [],
|
||||
"targets": {
|
||||
"build": {
|
||||
"executor": "@nx/js:tsc",
|
||||
"outputs": [
|
||||
"{options.outputPath}"
|
||||
],
|
||||
"options": {
|
||||
"outputPath": "dist/packages/pieces/community/scrapegrapghai",
|
||||
"tsConfig": "packages/pieces/community/scrapegrapghai/tsconfig.lib.json",
|
||||
"packageJson": "packages/pieces/community/scrapegrapghai/package.json",
|
||||
"main": "packages/pieces/community/scrapegrapghai/src/index.ts",
|
||||
"assets": [
|
||||
"packages/pieces/community/scrapegrapghai/*.md",
|
||||
{
|
||||
"input": "packages/pieces/community/scrapegrapghai/src/i18n",
|
||||
"output": "./src/i18n",
|
||||
"glob": "**/!(i18n.json)"
|
||||
}
|
||||
],
|
||||
"buildableProjectDepsInPackageJsonType": "dependencies",
|
||||
"updateBuildableProjectDepsInPackageJson": true
|
||||
},
|
||||
"dependsOn": [
|
||||
"^build",
|
||||
"prebuild"
|
||||
]
|
||||
},
|
||||
"nx-release-publish": {
|
||||
"options": {
|
||||
"packageRoot": "dist/{projectRoot}"
|
||||
}
|
||||
},
|
||||
"lint": {
|
||||
"executor": "@nx/eslint:lint",
|
||||
"outputs": [
|
||||
"{options.outputFile}"
|
||||
]
|
||||
},
|
||||
"prebuild": {
|
||||
"executor": "nx:run-commands",
|
||||
"options": {
|
||||
"cwd": "packages/pieces/community/scrapegrapghai",
|
||||
"command": "bun install --no-save --silent"
|
||||
},
|
||||
"dependsOn": [
|
||||
"^build"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
{
|
||||
"AI-powered web scraping and content extraction.": "KI-betriebene Web-Scraping und Inhaltsextraktion.",
|
||||
"\nFollow these steps to obtain your ScrapeGraphAI API Key:\n\n1. Visit [ScrapeGraphAI](https://scrapegraphai.com) and create an account.\n2. Log in and navigate to your dashboard.\n3. Locate and copy your API key from the dashboard.\n": "\nFolgen Sie diesen Schritten, um Ihren ScrapeGraphAI API-Schlüssel zu erhalten:\n\n1. Besuchen Sie [ScrapeGraphAI](https://scrapegraphai.com) und erstellen Sie ein Konto.\n2. Melden Sie sich an und navigieren Sie zu Ihrem Dashboard.\n3. Suchen und kopieren Sie Ihren API-Schlüssel aus dem Dashboard.\n",
|
||||
"Smart Scraper": "Smart Scraper",
|
||||
"Local Scraper": "Lokaler Scraper",
|
||||
"Convert to Markdown": "In Markdown umwandeln",
|
||||
"Custom API Call": "Eigener API-Aufruf",
|
||||
"Extract content from a webpage using AI by providing a natural language prompt.": "Extrahieren Sie Inhalte aus einer Webseite mit Hilfe von AI durch eine natürliche Sprachenabfrage.",
|
||||
"Extract content from HTML content using AI by providing a natural language prompt.": "Extrahieren Sie Inhalte aus HTML-Inhalten mit Hilfe von KI über eine natürliche Sprachenabfrage.",
|
||||
"Convert any webpage into clean, readable Markdown format.": "Konvertieren Sie jede Webseite in sauberes, lesbares Markdown Format.",
|
||||
"Make a custom API call to a specific endpoint": "Einen benutzerdefinierten API-Aufruf an einen bestimmten Endpunkt machen",
|
||||
"Website URL": "Website-URL",
|
||||
"Extraction Prompt": "Prompt für Extraktion",
|
||||
"Output Schema": "Ausgabeschema",
|
||||
"HTML Content": "HTML-Inhalt",
|
||||
"Method": "Methode",
|
||||
"Headers": "Kopfzeilen",
|
||||
"Query Parameters": "Abfrageparameter",
|
||||
"Body": "Körper",
|
||||
"Response is Binary ?": "Antwort ist binär?",
|
||||
"No Error on Failure": "Kein Fehler bei Fehler",
|
||||
"Timeout (in seconds)": "Timeout (in Sekunden)",
|
||||
"The webpage URL to scrape.": "Die URL der Webseite.",
|
||||
"Describe what information you want to extract in natural language.": "Beschreiben Sie, welche Informationen Sie in natürlicher Sprache extrahieren möchten.",
|
||||
"Optional schema to structure the output data.": "Optionales Schema, um die Ausgabedaten zu strukturieren.",
|
||||
"The HTML content to process (max 2MB).": "Der zu verarbeitende HTML-Inhalt (max 2MB).",
|
||||
"The webpage URL to convert to Markdown": "Die URL der Webseite, die zu Markdown konvertiert werden soll",
|
||||
"Authorization headers are injected automatically from your connection.": "Autorisierungs-Header werden automatisch von Ihrer Verbindung injiziert.",
|
||||
"Enable for files like PDFs, images, etc..": "Aktivieren für Dateien wie PDFs, Bilder, etc..",
|
||||
"GET": "ERHALTEN",
|
||||
"POST": "POST",
|
||||
"PATCH": "PATCH",
|
||||
"PUT": "PUT",
|
||||
"DELETE": "LÖSCHEN",
|
||||
"HEAD": "HEAD"
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
{
|
||||
"AI-powered web scraping and content extraction.": "Extracción de contenido y raspado web propulsado por AI.",
|
||||
"\nFollow these steps to obtain your ScrapeGraphAI API Key:\n\n1. Visit [ScrapeGraphAI](https://scrapegraphai.com) and create an account.\n2. Log in and navigate to your dashboard.\n3. Locate and copy your API key from the dashboard.\n": "\nSigue estos pasos para obtener tu clave API de ScrapeGraphAI:\n\n1. Visita [ScrapeGraphAI](https://scrapegraphai.com) y crea una cuenta.\n2. Inicie sesión y vaya a su panel de control.\n3. Localice y copie su clave API del panel de control.\n",
|
||||
"Smart Scraper": "Raspador Inteligente",
|
||||
"Local Scraper": "Raspador local",
|
||||
"Convert to Markdown": "Convertir a Markdown",
|
||||
"Custom API Call": "Llamada API personalizada",
|
||||
"Extract content from a webpage using AI by providing a natural language prompt.": "Extraiga contenido de una página web usando AI proporcionando una indicación de idioma natural.",
|
||||
"Extract content from HTML content using AI by providing a natural language prompt.": "Extraiga contenido del contenido HTML usando AI proporcionando una indicación de idioma natural.",
|
||||
"Convert any webpage into clean, readable Markdown format.": "Convierte cualquier página web en formato Markdown limpio y legible.",
|
||||
"Make a custom API call to a specific endpoint": "Hacer una llamada API personalizada a un extremo específico",
|
||||
"Website URL": "URL del sitio web",
|
||||
"Extraction Prompt": "Prompt de extracción",
|
||||
"Output Schema": "Esquema de salida",
|
||||
"HTML Content": "Contenido HTML",
|
||||
"Method": "Método",
|
||||
"Headers": "Encabezados",
|
||||
"Query Parameters": "Parámetros de consulta",
|
||||
"Body": "Cuerpo",
|
||||
"Response is Binary ?": "¿Respuesta es binaria?",
|
||||
"No Error on Failure": "No hay ningún error en fallo",
|
||||
"Timeout (in seconds)": "Tiempo de espera (en segundos)",
|
||||
"The webpage URL to scrape.": "La URL de la página web a scrape.",
|
||||
"Describe what information you want to extract in natural language.": "Describa qué información desea extraer en lenguaje natural.",
|
||||
"Optional schema to structure the output data.": "Esquema opcional para estructurar los datos de salida.",
|
||||
"The HTML content to process (max 2MB).": "El contenido HTML a procesar (máx. 2MB).",
|
||||
"The webpage URL to convert to Markdown": "La URL de la página web para convertir a Markdown",
|
||||
"Authorization headers are injected automatically from your connection.": "Las cabeceras de autorización se inyectan automáticamente desde tu conexión.",
|
||||
"Enable for files like PDFs, images, etc..": "Activar para archivos como PDFs, imágenes, etc.",
|
||||
"GET": "RECOGER",
|
||||
"POST": "POST",
|
||||
"PATCH": "PATCH",
|
||||
"PUT": "PUT",
|
||||
"DELETE": "BORRAR",
|
||||
"HEAD": "LIMPIO"
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
{
|
||||
"AI-powered web scraping and content extraction.": "Exploitation de sites web et d'extraction de contenu.",
|
||||
"\nFollow these steps to obtain your ScrapeGraphAI API Key:\n\n1. Visit [ScrapeGraphAI](https://scrapegraphai.com) and create an account.\n2. Log in and navigate to your dashboard.\n3. Locate and copy your API key from the dashboard.\n": "\nFollow these steps to obtain your ScrapeGraphAI API Key:\n\n1. Visit [ScrapeGraphAI](https://scrapegraphai.com) and create an account.\n2. Log in and navigate to your dashboard.\n3. Locate and copy your API key from the dashboard.\n",
|
||||
"Smart Scraper": "Écraseur intelligent",
|
||||
"Local Scraper": "Broyeur local",
|
||||
"Convert to Markdown": "Convertir en Markdown",
|
||||
"Custom API Call": "Appel d'API personnalisé",
|
||||
"Extract content from a webpage using AI by providing a natural language prompt.": "Extraire le contenu d'une page Web à l'aide de l'IA en fournissant une invite en langage naturel.",
|
||||
"Extract content from HTML content using AI by providing a natural language prompt.": "Extraire le contenu du contenu HTML à l'aide de l'IA en fournissant une invite en langage naturel.",
|
||||
"Convert any webpage into clean, readable Markdown format.": "Convertissez n'importe quelle page Web au format propre et lisible Markdown.",
|
||||
"Make a custom API call to a specific endpoint": "Passer un appel API personnalisé à un endpoint spécifique",
|
||||
"Website URL": "URL du site web",
|
||||
"Extraction Prompt": "Proposition d'extraction",
|
||||
"Output Schema": "Schéma de sortie",
|
||||
"HTML Content": "Contenu HTML",
|
||||
"Method": "Méthode",
|
||||
"Headers": "En-têtes",
|
||||
"Query Parameters": "Paramètres de requête",
|
||||
"Body": "Corps",
|
||||
"Response is Binary ?": "La réponse est Binaire ?",
|
||||
"No Error on Failure": "Aucune erreur en cas d'échec",
|
||||
"Timeout (in seconds)": "Délai d'expiration (en secondes)",
|
||||
"The webpage URL to scrape.": "L'URL de la page Web à explorer.",
|
||||
"Describe what information you want to extract in natural language.": "Décrivez quelles informations vous voulez extraire en langage naturel.",
|
||||
"Optional schema to structure the output data.": "Schéma facultatif pour structurer les données de sortie.",
|
||||
"The HTML content to process (max 2MB).": "Le contenu HTML à traiter (max 2MB).",
|
||||
"The webpage URL to convert to Markdown": "L'URL de la page Web à convertir en Markdown",
|
||||
"Authorization headers are injected automatically from your connection.": "Les en-têtes d'autorisation sont injectés automatiquement à partir de votre connexion.",
|
||||
"Enable for files like PDFs, images, etc..": "Activer pour les fichiers comme les PDFs, les images, etc.",
|
||||
"GET": "GET",
|
||||
"POST": "POST",
|
||||
"PATCH": "PATCH",
|
||||
"PUT": "PUT",
|
||||
"DELETE": "DELETE",
|
||||
"HEAD": "HEAD"
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
{
|
||||
"AI-powered web scraping and content extraction.": "AI駆動のWebスクレイピングとコンテンツ抽出。",
|
||||
"\nFollow these steps to obtain your ScrapeGraphAI API Key:\n\n1. Visit [ScrapeGraphAI](https://scrapegraphai.com) and create an account.\n2. Log in and navigate to your dashboard.\n3. Locate and copy your API key from the dashboard.\n": "\nFollow these steps to obtain your ScrapeGraphAI API Key:\n\n1. Visit [ScrapeGraphAI](https://scrapegraphai.com) and create an account.\n2. Log in and navigate to your dashboard.\n3. Locate and copy your API key from the dashboard.\n",
|
||||
"Smart Scraper": "スマートスクレーパー",
|
||||
"Local Scraper": "ローカルスクレーパー",
|
||||
"Convert to Markdown": "マークダウンに変換",
|
||||
"Custom API Call": "カスタムAPI通話",
|
||||
"Extract content from a webpage using AI by providing a natural language prompt.": "自然言語プロンプトを提供することにより、AIを使用してWebページからコンテンツを抽出する。",
|
||||
"Extract content from HTML content using AI by providing a natural language prompt.": "自然言語プロンプトを提供することにより、AIを使用してHTMLコンテンツからコンテンツを抽出する。",
|
||||
"Convert any webpage into clean, readable Markdown format.": "任意のWebページをきれいで読みやすいMarkdown形式に変換します。",
|
||||
"Make a custom API call to a specific endpoint": "特定のエンドポイントへのカスタム API コールを実行します。",
|
||||
"Website URL": "Website URL",
|
||||
"Extraction Prompt": "Extraction Prompt",
|
||||
"Output Schema": "出力スキーマ",
|
||||
"HTML Content": "HTML コンテンツ",
|
||||
"Method": "方法",
|
||||
"Headers": "ヘッダー",
|
||||
"Query Parameters": "クエリパラメータ",
|
||||
"Body": "本文",
|
||||
"Response is Binary ?": "応答はバイナリですか?",
|
||||
"No Error on Failure": "失敗時にエラーはありません",
|
||||
"Timeout (in seconds)": "タイムアウト(秒)",
|
||||
"The webpage URL to scrape.": "スクレイプするウェブページのURL。",
|
||||
"Describe what information you want to extract in natural language.": "自然言語で抽出したい情報を説明します。",
|
||||
"Optional schema to structure the output data.": "出力データを構造化するオプションのスキーマ。",
|
||||
"The HTML content to process (max 2MB).": "処理する HTML コンテンツ (最大 2MB)",
|
||||
"The webpage URL to convert to Markdown": "Markdownに変換するウェブページのURL",
|
||||
"Authorization headers are injected automatically from your connection.": "認証ヘッダは接続から自動的に注入されます。",
|
||||
"Enable for files like PDFs, images, etc..": "PDF、画像などのファイルを有効にします。",
|
||||
"GET": "取得",
|
||||
"POST": "POST",
|
||||
"PATCH": "PATCH",
|
||||
"PUT": "PUT",
|
||||
"DELETE": "削除",
|
||||
"HEAD": "頭"
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
{
|
||||
"AI-powered web scraping and content extraction.": "Webscraping en content extractie aangedreven door AI-kracht.",
|
||||
"\nFollow these steps to obtain your ScrapeGraphAI API Key:\n\n1. Visit [ScrapeGraphAI](https://scrapegraphai.com) and create an account.\n2. Log in and navigate to your dashboard.\n3. Locate and copy your API key from the dashboard.\n": "\nVolg deze stappen om uw ScrapeGraphAI API-sleutel te verkrijgen:\n\n1. Bezoek [ScrapeGraphAI](https://scrapegraphai.com) en maak een account aan.\n2. Log in en navigeer naar uw dashboard.\n3. Zoek en kopieer uw API-sleutel vanuit het dashboard.\n",
|
||||
"Smart Scraper": "Slimme schroot",
|
||||
"Local Scraper": "Lokale Schrader",
|
||||
"Convert to Markdown": "Converteren naar Markdown",
|
||||
"Custom API Call": "Custom API Call",
|
||||
"Extract content from a webpage using AI by providing a natural language prompt.": "Haal inhoud van een webpagina uit met behulp van AI door een natuurlijke taalprompte aan te bieden.",
|
||||
"Extract content from HTML content using AI by providing a natural language prompt.": "Haal inhoud uit HTML met behulp van AI uit door een natuurlijke taalprompte te bieden.",
|
||||
"Convert any webpage into clean, readable Markdown format.": "Zet elke webpagina om in schone, leesbare Markdown formaat.",
|
||||
"Make a custom API call to a specific endpoint": "Maak een aangepaste API call naar een specifiek eindpunt",
|
||||
"Website URL": "Website URL",
|
||||
"Extraction Prompt": "Extractie Prompt",
|
||||
"Output Schema": "Uitvoer Schema",
|
||||
"HTML Content": "HTML inhoud",
|
||||
"Method": "Methode",
|
||||
"Headers": "Kopteksten",
|
||||
"Query Parameters": "Query parameters",
|
||||
"Body": "Lichaam",
|
||||
"Response is Binary ?": "Antwoord is binair?",
|
||||
"No Error on Failure": "Geen fout bij fout",
|
||||
"Timeout (in seconds)": "Time-out (in seconden)",
|
||||
"The webpage URL to scrape.": "De URL van de webpagina om te scrapen.",
|
||||
"Describe what information you want to extract in natural language.": "Beschrijf welke informatie u in de natuurlijke taal wilt extraheren.",
|
||||
"Optional schema to structure the output data.": "Optioneel schema om de output data te structureren.",
|
||||
"The HTML content to process (max 2MB).": "De te verwerken HTML-inhoud (max 2MB).",
|
||||
"The webpage URL to convert to Markdown": "De webpagina URL om te converteren naar Markdown",
|
||||
"Authorization headers are injected automatically from your connection.": "Autorisatie headers worden automatisch geïnjecteerd vanuit uw verbinding.",
|
||||
"Enable for files like PDFs, images, etc..": "Inschakelen voor bestanden zoals PDF's, afbeeldingen etc..",
|
||||
"GET": "KRIJG",
|
||||
"POST": "POSTE",
|
||||
"PATCH": "BEKIJK",
|
||||
"PUT": "PUT",
|
||||
"DELETE": "VERWIJDEREN",
|
||||
"HEAD": "HOOFD"
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
{
|
||||
"AI-powered web scraping and content extraction.": "Remoção de conteúdo e remoção de conteúdo com tecnologia AI.",
|
||||
"\nFollow these steps to obtain your ScrapeGraphAI API Key:\n\n1. Visit [ScrapeGraphAI](https://scrapegraphai.com) and create an account.\n2. Log in and navigate to your dashboard.\n3. Locate and copy your API key from the dashboard.\n": "\nSiga estes passos para obter sua Chave de API ScrapeGraphAI:\n\n1. Visite [ScrapeGraphAI](https://scrapegraphai.com) e crie uma conta.\n2. Inicie sessão e navegue para o seu painel.\n3. Localize e copie sua chave de API a partir do painel de controle.\n",
|
||||
"Smart Scraper": "Scraper Inteligente",
|
||||
"Local Scraper": "Scraper local",
|
||||
"Convert to Markdown": "Converter para Markdown",
|
||||
"Custom API Call": "Chamada de API personalizada",
|
||||
"Extract content from a webpage using AI by providing a natural language prompt.": "Extraia conteúdo de uma página da web usando a IA fornecendo um prompt de linguagem natural.",
|
||||
"Extract content from HTML content using AI by providing a natural language prompt.": "Extraia conteúdo de conteúdo HTML usando a IA fornecendo um prompt de linguagem natural.",
|
||||
"Convert any webpage into clean, readable Markdown format.": "Converta qualquer página web em formato Markdown limpo e legível.",
|
||||
"Make a custom API call to a specific endpoint": "Faça uma chamada de API personalizada para um ponto de extremidade específico",
|
||||
"Website URL": "URL do site",
|
||||
"Extraction Prompt": "Solicitação de extração",
|
||||
"Output Schema": "Esquema de saída",
|
||||
"HTML Content": "Conteúdo HTML",
|
||||
"Method": "Método",
|
||||
"Headers": "Cabeçalhos",
|
||||
"Query Parameters": "Parâmetros da consulta",
|
||||
"Body": "Conteúdo",
|
||||
"Response is Binary ?": "A resposta é binária ?",
|
||||
"No Error on Failure": "Nenhum erro no Failure",
|
||||
"Timeout (in seconds)": "Tempo limite (em segundos)",
|
||||
"The webpage URL to scrape.": "A URL da página web para scrape.",
|
||||
"Describe what information you want to extract in natural language.": "Descreva que informações você deseja extrair na língua natural.",
|
||||
"Optional schema to structure the output data.": "Esquema opcional para estruturar os dados de saída.",
|
||||
"The HTML content to process (max 2MB).": "O conteúdo HTML a processar (máx. 2MB).",
|
||||
"The webpage URL to convert to Markdown": "O URL da página da Web para converter para Markdown",
|
||||
"Authorization headers are injected automatically from your connection.": "Os cabeçalhos de autorização são inseridos automaticamente a partir da sua conexão.",
|
||||
"Enable for files like PDFs, images, etc..": "Habilitar para arquivos como PDFs, imagens, etc..",
|
||||
"GET": "OBTER",
|
||||
"POST": "POSTAR",
|
||||
"PATCH": "COMPRAR",
|
||||
"PUT": "COLOCAR",
|
||||
"DELETE": "EXCLUIR",
|
||||
"HEAD": "CABEÇA"
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
{
|
||||
"ScrapeGraphAI": "ScrapeGraphAI",
|
||||
"AI-powered web scraping and content extraction.": "Поддерживаемый AI веб-архив и распаковка контента.",
|
||||
"\nFollow these steps to obtain your ScrapeGraphAI API Key:\n\n1. Visit [ScrapeGraphAI](https://scrapegraphai.com) and create an account.\n2. Log in and navigate to your dashboard.\n3. Locate and copy your API key from the dashboard.\n": "\nFollow these steps to obtain your ScrapeGraphAI API Key:\n\n1. Visit [ScrapeGraphAI](https://scrapegraphai.com) and create an account.\n2. Log in and navigate to your dashboard.\n3. Locate and copy your API key from the dashboard.\n",
|
||||
"Smart Scraper": "Умный скрепер",
|
||||
"Local Scraper": "Локальный Scraper",
|
||||
"Convert to Markdown": "Преобразовать в Markdown",
|
||||
"Custom API Call": "Пользовательский вызов API",
|
||||
"Extract content from a webpage using AI by providing a natural language prompt.": "Извлечь содержимое веб-страницы с помощью ИИ путем естественного языкового подсказки.",
|
||||
"Extract content from HTML content using AI by providing a natural language prompt.": "Извлечь содержимое из HTML с помощью AI, предоставляя естественную языковую подсказку.",
|
||||
"Convert any webpage into clean, readable Markdown format.": "Конвертируйте любую веб-страницу в чистый, читаемый формат Markdown .",
|
||||
"Make a custom API call to a specific endpoint": "Сделать пользовательский API вызов к определенной конечной точке",
|
||||
"Website URL": "URL сайта",
|
||||
"Extraction Prompt": "Подсказка к извлечению",
|
||||
"Output Schema": "Схема вывода",
|
||||
"HTML Content": "Содержимое HTML",
|
||||
"Method": "Метод",
|
||||
"Headers": "Заголовки",
|
||||
"Query Parameters": "Параметры запроса",
|
||||
"Body": "Тело",
|
||||
"No Error on Failure": "Нет ошибок при ошибке",
|
||||
"Timeout (in seconds)": "Таймаут (в секундах)",
|
||||
"The webpage URL to scrape.": "URL веб-страницы для scrape.",
|
||||
"Describe what information you want to extract in natural language.": "Опишите, какую информацию вы хотите извлечь на естественном языке.",
|
||||
"Optional schema to structure the output data.": "Необязательная схема структурирования выходных данных.",
|
||||
"The HTML content to process (max 2MB).": "Содержимое HTML для обработки (макс. 2MB).",
|
||||
"The webpage URL to convert to Markdown": "URL веб-страницы для преобразования в Markdown",
|
||||
"Authorization headers are injected automatically from your connection.": "Заголовки авторизации включаются автоматически из вашего соединения.",
|
||||
"GET": "ПОЛУЧИТЬ",
|
||||
"POST": "ПОСТ",
|
||||
"PATCH": "ПАТЧ",
|
||||
"PUT": "ПОКУПИТЬ",
|
||||
"DELETE": "УДАЛИТЬ",
|
||||
"HEAD": "HEAD"
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
{
|
||||
"AI-powered web scraping and content extraction.": "AI-powered web scraping and content extraction.",
|
||||
"\nFollow these steps to obtain your ScrapeGraphAI API Key:\n\n1. Visit [ScrapeGraphAI](https://scrapegraphai.com) and create an account.\n2. Log in and navigate to your dashboard.\n3. Locate and copy your API key from the dashboard.\n": "\nFollow these steps to obtain your ScrapeGraphAI API Key:\n\n1. Visit [ScrapeGraphAI](https://scrapegraphai.com) and create an account.\n2. Log in and navigate to your dashboard.\n3. Locate and copy your API key from the dashboard.\n",
|
||||
"Smart Scraper": "Smart Scraper",
|
||||
"Local Scraper": "Local Scraper",
|
||||
"Convert to Markdown": "Convert to Markdown",
|
||||
"Custom API Call": "Custom API Call",
|
||||
"Extract content from a webpage using AI by providing a natural language prompt.": "Extract content from a webpage using AI by providing a natural language prompt.",
|
||||
"Extract content from HTML content using AI by providing a natural language prompt.": "Extract content from HTML content using AI by providing a natural language prompt.",
|
||||
"Convert any webpage into clean, readable Markdown format.": "Convert any webpage into clean, readable Markdown format.",
|
||||
"Make a custom API call to a specific endpoint": "Make a custom API call to a specific endpoint",
|
||||
"Website URL": "Website URL",
|
||||
"Extraction Prompt": "Extraction Prompt",
|
||||
"Output Schema": "Output Schema",
|
||||
"HTML Content": "HTML Content",
|
||||
"Method": "Method",
|
||||
"Headers": "Headers",
|
||||
"Query Parameters": "Query Parameters",
|
||||
"Body": "Body",
|
||||
"Response is Binary ?": "Response is Binary ?",
|
||||
"No Error on Failure": "No Error on Failure",
|
||||
"Timeout (in seconds)": "Timeout (in seconds)",
|
||||
"The webpage URL to scrape.": "The webpage URL to scrape.",
|
||||
"Describe what information you want to extract in natural language.": "Describe what information you want to extract in natural language.",
|
||||
"Optional schema to structure the output data.": "Optional schema to structure the output data.",
|
||||
"The HTML content to process (max 2MB).": "The HTML content to process (max 2MB).",
|
||||
"The webpage URL to convert to Markdown": "The webpage URL to convert to Markdown",
|
||||
"Authorization headers are injected automatically from your connection.": "Authorization headers are injected automatically from your connection.",
|
||||
"Enable for files like PDFs, images, etc..": "Enable for files like PDFs, images, etc..",
|
||||
"GET": "GET",
|
||||
"POST": "POST",
|
||||
"PATCH": "PATCH",
|
||||
"PUT": "PUT",
|
||||
"DELETE": "DELETE",
|
||||
"HEAD": "HEAD"
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
{
|
||||
"ScrapeGraphAI": "ScrapeGraphAI",
|
||||
"AI-powered web scraping and content extraction.": "AI-powered web scraping and content extraction.",
|
||||
"\nFollow these steps to obtain your ScrapeGraphAI API Key:\n\n1. Visit [ScrapeGraphAI](https://scrapegraphai.com) and create an account.\n2. Log in and navigate to your dashboard.\n3. Locate and copy your API key from the dashboard.\n": "\nFollow these steps to obtain your ScrapeGraphAI API Key:\n\n1. Visit [ScrapeGraphAI](https://scrapegraphai.com) and create an account.\n2. Log in and navigate to your dashboard.\n3. Locate and copy your API key from the dashboard.\n",
|
||||
"Smart Scraper": "Smart Scraper",
|
||||
"Local Scraper": "Local Scraper",
|
||||
"Convert to Markdown": "Convert to Markdown",
|
||||
"Custom API Call": "Custom API Call",
|
||||
"Extract content from a webpage using AI by providing a natural language prompt.": "Extract content from a webpage using AI by providing a natural language prompt.",
|
||||
"Extract content from HTML content using AI by providing a natural language prompt.": "Extract content from HTML content using AI by providing a natural language prompt.",
|
||||
"Convert any webpage into clean, readable Markdown format.": "Convert any webpage into clean, readable Markdown format.",
|
||||
"Make a custom API call to a specific endpoint": "Make a custom API call to a specific endpoint",
|
||||
"Website URL": "Website URL",
|
||||
"Extraction Prompt": "Extraction Prompt",
|
||||
"Output Schema": "Output Schema",
|
||||
"HTML Content": "HTML Content",
|
||||
"Method": "Method",
|
||||
"Headers": "Headers",
|
||||
"Query Parameters": "Query Parameters",
|
||||
"Body": "Body",
|
||||
"No Error on Failure": "No Error on Failure",
|
||||
"Timeout (in seconds)": "Timeout (in seconds)",
|
||||
"The webpage URL to scrape.": "The webpage URL to scrape.",
|
||||
"Describe what information you want to extract in natural language.": "Describe what information you want to extract in natural language.",
|
||||
"Optional schema to structure the output data.": "Optional schema to structure the output data.",
|
||||
"The HTML content to process (max 2MB).": "The HTML content to process (max 2MB).",
|
||||
"The webpage URL to convert to Markdown": "The webpage URL to convert to Markdown",
|
||||
"Authorization headers are injected automatically from your connection.": "Authorization headers are injected automatically from your connection.",
|
||||
"GET": "GET",
|
||||
"POST": "POST",
|
||||
"PATCH": "PATCH",
|
||||
"PUT": "PUT",
|
||||
"DELETE": "DELETE",
|
||||
"HEAD": "HEAD"
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
{
|
||||
"AI-powered web scraping and content extraction.": "AI-powered web scraping and content extraction.",
|
||||
"\nFollow these steps to obtain your ScrapeGraphAI API Key:\n\n1. Visit [ScrapeGraphAI](https://scrapegraphai.com) and create an account.\n2. Log in and navigate to your dashboard.\n3. Locate and copy your API key from the dashboard.\n": "\nFollow these steps to obtain your ScrapeGraphAI API Key:\n\n1. Visit [ScrapeGraphAI](https://scrapegraphai.com) and create an account.\n2. Log in and navigate to your dashboard.\n3. Locate and copy your API key from the dashboard.\n",
|
||||
"Smart Scraper": "Smart Scraper",
|
||||
"Local Scraper": "Local Scraper",
|
||||
"Convert to Markdown": "Convert to Markdown",
|
||||
"Custom API Call": "自定义 API 呼叫",
|
||||
"Extract content from a webpage using AI by providing a natural language prompt.": "Extract content from a webpage using AI by providing a natural language prompt.",
|
||||
"Extract content from HTML content using AI by providing a natural language prompt.": "Extract content from HTML content using AI by providing a natural language prompt.",
|
||||
"Convert any webpage into clean, readable Markdown format.": "Convert any webpage into clean, readable Markdown format.",
|
||||
"Make a custom API call to a specific endpoint": "将一个自定义 API 调用到一个特定的终点",
|
||||
"Website URL": "Website URL",
|
||||
"Extraction Prompt": "Extraction Prompt",
|
||||
"Output Schema": "Output Schema",
|
||||
"HTML Content": "HTML Content",
|
||||
"Method": "方法",
|
||||
"Headers": "信头",
|
||||
"Query Parameters": "查询参数",
|
||||
"Body": "正文内容",
|
||||
"Response is Binary ?": "Response is Binary ?",
|
||||
"No Error on Failure": "失败时没有错误",
|
||||
"Timeout (in seconds)": "超时(秒)",
|
||||
"The webpage URL to scrape.": "The webpage URL to scrape.",
|
||||
"Describe what information you want to extract in natural language.": "Describe what information you want to extract in natural language.",
|
||||
"Optional schema to structure the output data.": "Optional schema to structure the output data.",
|
||||
"The HTML content to process (max 2MB).": "The HTML content to process (max 2MB).",
|
||||
"The webpage URL to convert to Markdown": "The webpage URL to convert to Markdown",
|
||||
"Authorization headers are injected automatically from your connection.": "授权头自动从您的连接中注入。",
|
||||
"Enable for files like PDFs, images, etc..": "Enable for files like PDFs, images, etc..",
|
||||
"GET": "获取",
|
||||
"POST": "帖子",
|
||||
"PATCH": "PATCH",
|
||||
"PUT": "弹出",
|
||||
"DELETE": "删除",
|
||||
"HEAD": "黑色"
|
||||
}
|
||||
@@ -0,0 +1,68 @@
|
||||
import { createCustomApiCallAction, httpClient, HttpMethod } from '@activepieces/pieces-common';
|
||||
import { createPiece, PieceAuth } from '@activepieces/pieces-framework';
|
||||
import { PieceCategory } from '@activepieces/shared';
|
||||
import { smartScraper } from './lib/actions/smart-scraper';
|
||||
import { localScraper } from './lib/actions/local-scraper';
|
||||
import { markdownify } from './lib/actions/markdownify';
|
||||
|
||||
const markdownDescription = `
|
||||
Follow these steps to obtain your ScrapeGraphAI API Key:
|
||||
|
||||
1. Visit [ScrapeGraphAI](https://scrapegraphai.com) and create an account.
|
||||
2. Log in and navigate to your dashboard.
|
||||
3. Locate and copy your API key from the dashboard.
|
||||
`;
|
||||
|
||||
export const scrapegraphaiAuth = PieceAuth.SecretText({
|
||||
description: markdownDescription,
|
||||
displayName: 'API Key',
|
||||
required: true,
|
||||
validate: async ({ auth }) => {
|
||||
try {
|
||||
await httpClient.sendRequest({
|
||||
method: HttpMethod.POST,
|
||||
url: 'https://api.scrapegraphai.com/v1/smartscraper',
|
||||
headers: {
|
||||
'Content-Type': 'application/json',
|
||||
'SGAI-APIKEY': auth,
|
||||
},
|
||||
body: {
|
||||
user_prompt: 'test',
|
||||
website_url: 'https://www.example.com',
|
||||
},
|
||||
});
|
||||
return {
|
||||
valid: true,
|
||||
};
|
||||
} catch (e) {
|
||||
return {
|
||||
valid: false,
|
||||
error: 'Invalid API Key',
|
||||
};
|
||||
}
|
||||
},
|
||||
});
|
||||
|
||||
export const scrapegraphai = createPiece({
|
||||
displayName: 'ScrapeGraphAI',
|
||||
description: 'AI-powered web scraping and content extraction.',
|
||||
minimumSupportedRelease: '0.30.0',
|
||||
logoUrl: 'https://cdn.activepieces.com/pieces/scrapegraphai.jpg',
|
||||
categories: [PieceCategory.ARTIFICIAL_INTELLIGENCE],
|
||||
authors: ["OsamaHaikal"],
|
||||
auth: scrapegraphaiAuth,
|
||||
actions: [
|
||||
smartScraper,
|
||||
localScraper,
|
||||
markdownify,
|
||||
createCustomApiCallAction({
|
||||
baseUrl: () => 'https://api.scrapegraphai.com/v1',
|
||||
auth: scrapegraphaiAuth,
|
||||
authMapping: async (auth) => ({
|
||||
'SGAI-APIKEY': `${auth.secret_text}`,
|
||||
}),
|
||||
}),
|
||||
],
|
||||
triggers: [],
|
||||
});
|
||||
|
||||
@@ -0,0 +1,44 @@
|
||||
import { createAction, Property } from '@activepieces/pieces-framework';
|
||||
import { httpClient, HttpMethod } from '@activepieces/pieces-common';
|
||||
import { scrapegraphaiAuth } from '../../index';
|
||||
|
||||
export const localScraper = createAction({
|
||||
name: 'local_scraper',
|
||||
displayName: 'Local Scraper',
|
||||
description: 'Extract content from HTML content using AI by providing a natural language prompt.',
|
||||
auth: scrapegraphaiAuth,
|
||||
props: {
|
||||
website_html: Property.LongText({
|
||||
displayName: 'HTML Content',
|
||||
description: 'The HTML content to process (max 2MB).',
|
||||
required: true,
|
||||
}),
|
||||
user_prompt: Property.LongText({
|
||||
displayName: 'Extraction Prompt',
|
||||
description: 'Describe what information you want to extract in natural language.',
|
||||
required: true,
|
||||
}),
|
||||
output_schema: Property.Json({
|
||||
displayName: 'Output Schema',
|
||||
description: 'Optional schema to structure the output data.',
|
||||
required: false,
|
||||
}),
|
||||
},
|
||||
async run({ auth, propsValue }) {
|
||||
const response = await httpClient.sendRequest({
|
||||
method: HttpMethod.POST,
|
||||
url: 'https://api.scrapegraphai.com/v1/localscraper',
|
||||
headers: {
|
||||
'Content-Type': 'application/json',
|
||||
'SGAI-APIKEY': auth.secret_text,
|
||||
},
|
||||
body: {
|
||||
website_html: propsValue.website_html,
|
||||
user_prompt: propsValue.user_prompt,
|
||||
output_schema: propsValue.output_schema,
|
||||
},
|
||||
});
|
||||
|
||||
return response.body;
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,32 @@
|
||||
import { createAction, Property } from '@activepieces/pieces-framework';
|
||||
import { httpClient, HttpMethod } from '@activepieces/pieces-common';
|
||||
import { scrapegraphaiAuth } from '../../index';
|
||||
|
||||
export const markdownify = createAction({
|
||||
name: 'markdownify',
|
||||
displayName: 'Convert to Markdown',
|
||||
description: 'Convert any webpage into clean, readable Markdown format.',
|
||||
auth: scrapegraphaiAuth,
|
||||
props: {
|
||||
website_url: Property.ShortText({
|
||||
displayName: 'Website URL',
|
||||
description: 'The webpage URL to convert to Markdown',
|
||||
required: true,
|
||||
}),
|
||||
},
|
||||
async run({ auth, propsValue }) {
|
||||
const response = await httpClient.sendRequest({
|
||||
method: HttpMethod.POST,
|
||||
url: 'https://api.scrapegraphai.com/v1/markdownify',
|
||||
headers: {
|
||||
'Content-Type': 'application/json',
|
||||
'SGAI-APIKEY': auth.secret_text,
|
||||
},
|
||||
body: {
|
||||
website_url: propsValue.website_url,
|
||||
},
|
||||
});
|
||||
|
||||
return response.body;
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,44 @@
|
||||
import { createAction, Property } from '@activepieces/pieces-framework';
|
||||
import { httpClient, HttpMethod } from '@activepieces/pieces-common';
|
||||
import { scrapegraphaiAuth } from '../../index';
|
||||
|
||||
export const smartScraper = createAction({
|
||||
name: 'smart_scraper',
|
||||
displayName: 'Smart Scraper',
|
||||
description: 'Extract content from a webpage using AI by providing a natural language prompt.',
|
||||
auth: scrapegraphaiAuth,
|
||||
props: {
|
||||
website_url: Property.ShortText({
|
||||
displayName: 'Website URL',
|
||||
description: 'The webpage URL to scrape.',
|
||||
required: true,
|
||||
}),
|
||||
user_prompt: Property.LongText({
|
||||
displayName: 'Extraction Prompt',
|
||||
description: 'Describe what information you want to extract in natural language.',
|
||||
required: true,
|
||||
}),
|
||||
output_schema: Property.Json({
|
||||
displayName: 'Output Schema',
|
||||
description: 'Optional schema to structure the output data.',
|
||||
required: false,
|
||||
}),
|
||||
},
|
||||
async run({ auth, propsValue }) {
|
||||
const response = await httpClient.sendRequest({
|
||||
method: HttpMethod.POST,
|
||||
url: 'https://api.scrapegraphai.com/v1/smartscraper',
|
||||
headers: {
|
||||
'Content-Type': 'application/json',
|
||||
'SGAI-APIKEY': auth.secret_text,
|
||||
},
|
||||
body: {
|
||||
website_url: propsValue.website_url,
|
||||
user_prompt: propsValue.user_prompt,
|
||||
output_schema: propsValue.output_schema,
|
||||
},
|
||||
});
|
||||
|
||||
return response.body;
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,19 @@
|
||||
{
|
||||
"extends": "../../../../tsconfig.base.json",
|
||||
"compilerOptions": {
|
||||
"module": "commonjs",
|
||||
"forceConsistentCasingInFileNames": true,
|
||||
"strict": true,
|
||||
"noImplicitOverride": true,
|
||||
"noImplicitReturns": true,
|
||||
"noFallthroughCasesInSwitch": true,
|
||||
"noPropertyAccessFromIndexSignature": true
|
||||
},
|
||||
"files": [],
|
||||
"include": [],
|
||||
"references": [
|
||||
{
|
||||
"path": "./tsconfig.lib.json"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"extends": "./tsconfig.json",
|
||||
"compilerOptions": {
|
||||
"module": "commonjs",
|
||||
"outDir": "../../../../dist/out-tsc",
|
||||
"declaration": true,
|
||||
"types": ["node"]
|
||||
},
|
||||
"exclude": ["jest.config.ts", "src/**/*.spec.ts", "src/**/*.test.ts"],
|
||||
"include": ["src/**/*.ts"]
|
||||
}
|
||||
Reference in New Issue
Block a user