You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: src/lfx/src/lfx/_assets/component_index.json
+5-5Lines changed: 5 additions & 5 deletions
Original file line number
Diff line number
Diff line change
@@ -93918,7 +93918,7 @@
93918
93918
"icon": "MrScraper",
93919
93919
"legacy": false,
93920
93920
"metadata": {
93921
-
"code_hash": "47c23bf77e42",
93921
+
"code_hash": "0e45bf184540",
93922
93922
"dependencies": {
93923
93923
"dependencies": [
93924
93924
{
@@ -93990,7 +93990,7 @@
93990
93990
"show": true,
93991
93991
"title_case": false,
93992
93992
"type": "code",
93993
-
"value": "\"\"\"MrScraper component: batch rerun AI or manual scrapers on multiple URLs.\"\"\"\n\nfrom lfx.custom.custom_component.component import Component\nfrom lfx.io import DropdownInput, MultilineInput, Output, SecretStrInput, StrInput\nfrom lfx.schema.data import Data\n\n\nclass MrscraperBatchScrape(Component):\n \"\"\"Langflow component for MrScraper bulk AI or manual scraper reruns.\"\"\"\n\n display_name: str = \"MrScraper Batch Scrape URLs\"\n description: str = (\n \"Rerun an existing MrScraper scraper on multiple URLs in a single batch. \"\n \"Supports both AI and Manual scraper modes.\"\n )\n name = \"MrscraperBatchScrape\"\n icon: str = \"MrScraper\"\n documentation: str = \"https://docs.mrscraper.com\"\n\n inputs = [\n SecretStrInput(\n name=\"api_token\",\n display_name=\"MrScraper API Token\",\n required=True,\n password=True,\n info=\"Your MrScraper API token. Get yours at https://app.mrscraper.com.\",\n ),\n StrInput(\n name=\"scraper_id\",\n display_name=\"Scraper ID\",\n required=True,\n info=\"ID of the scraper to rerun (from create_scraper or the MrScraper dashboard).\",\n tool_mode=True,\n ),\n MultilineInput(\n name=\"urls\",\n display_name=\"URLs\",\n required=True,\n info=\"List of target URLs to scrape (separated by commas or new lines).\",\n tool_mode=True,\n ),\n DropdownInput(\n name=\"mode\",\n display_name=\"Scraper Mode\",\n options=[\"AI\", \"Manual\"],\n value=\"AI\",\n info='\"AI\" uses bulk_rerun_ai_scraper. \"Manual\" uses bulk_rerun_manual_scraper.',\n ),\n ]\n\n outputs = [\n Output(display_name=\"Result\", name=\"data\", method=\"batch_scrape\"),\n ]\n\n async def batch_scrape(self) -> Data:\n \"\"\"Validate URLs, dispatch bulk rerun by mode, and return `Data`.\"\"\"\n try:\n from mrscraper import MrScraper\n except ImportError as e:\n msg = \"Could not import mrscraper SDK. Please install it with `pip install mrscraper-sdk`.\"\n raise ImportError(msg) from e\n\n if not self.urls:\n msg = \"URLs are required\"\n raise ValueError(msg)\n\n url_list = [u.strip() for u in self.urls.replace(\"\\n\", \",\").split(\",\") if u.strip()]\n if not url_list:\n msg = \"No valid URLs provided\"\n raise ValueError(msg)\n\n client = MrScraper(token=self.api_token)\n\n if self.mode == \"AI\":\n result = await client.bulk_rerun_ai_scraper(\n scraper_id=self.scraper_id,\n urls=url_list,\n )\n else:\n result = await client.bulk_rerun_manual_scraper(\n scraper_id=self.scraper_id,\n urls=url_list,\n )\n\n return Data(data=result)\n"
93993
+
"value": "\"\"\"MrScraper component: batch rerun AI or manual scrapers on multiple URLs.\"\"\"\n\nfrom lfx.custom.custom_component.component import Component\nfrom lfx.io import DropdownInput, MultilineInput, Output, SecretStrInput, StrInput\nfrom lfx.schema.data import Data\n\n\nclass MrscraperBatchScrape(Component):\n \"\"\"Langflow component for MrScraper bulk AI or manual scraper reruns.\"\"\"\n\n display_name: str = \"MrScraper Batch Scrape URLs\"\n description: str = (\n \"Rerun an existing MrScraper scraper on multiple URLs in a single batch. \"\n \"Supports both AI and Manual scraper modes.\"\n )\n name = \"MrscraperBatchScrape\"\n icon: str = \"MrScraper\"\n documentation: str = \"https://docs.mrscraper.com\"\n\n inputs = [\n SecretStrInput(\n name=\"api_token\",\n display_name=\"MrScraper API Token\",\n required=True,\n password=True,\n info=\"Your MrScraper API token. Get yours at https://app.mrscraper.com.\",\n ),\n StrInput(\n name=\"scraper_id\",\n display_name=\"Scraper ID\",\n required=True,\n info=\"ID of the scraper to rerun (from create_scraper or the MrScraper dashboard).\",\n tool_mode=True,\n ),\n MultilineInput(\n name=\"urls\",\n display_name=\"URLs\",\n required=True,\n info=\"List of target URLs to scrape (separated by commas or new lines).\",\n tool_mode=True,\n ),\n DropdownInput(\n name=\"mode\",\n display_name=\"Scraper Mode\",\n options=[\"AI\", \"Manual\"],\n value=\"AI\",\n info='\"AI\" uses bulk_rerun_ai_scraper. \"Manual\" uses bulk_rerun_manual_scraper.',\n ),\n ]\n\n outputs = [\n Output(display_name=\"Result\", name=\"data\", method=\"batch_scrape\"),\n ]\n\n async def batch_scrape(self) -> Data:\n \"\"\"Validate URLs, dispatch bulk rerun by mode, and return `Data`.\"\"\"\n try:\n from mrscraper import MrScraper\n except ImportError as e:\n msg = \"Could not import mrscraper SDK. Please install it with `pip install mrscraper-sdk`.\"\n raise ImportError(msg) from e\n\n if not self.urls:\n msg = \"URLs are required\"\n raise ValueError(msg)\n\n url_list = [u.strip() for u in self.urls.replace(\"\\n\", \",\").split(\",\") if u.strip()]\n if not url_list:\n msg = \"No valid URLs provided\"\n raise ValueError(msg)\n\n client = MrScraper(token=self.api_token)\n\n if self.mode == \"AI\":\n result = await client.bulk_rerun_ai_scraper(\n scraper_id=self.scraper_id,\n urls=url_list,\n )\n elif self.mode == \"Manual\":\n result = await client.bulk_rerun_manual_scraper(\n scraper_id=self.scraper_id,\n urls=url_list,\n )\n else:\n msg = f\"Unsupported mode: {self.mode!r}. Expected 'AI' or 'Manual'.\"\n raise ValueError(msg)\n\n return Data(data=result)\n"
93994
93994
},
93995
93995
"mode": {
93996
93996
"_input_type": "DropdownInput",
@@ -94512,7 +94512,7 @@
94512
94512
"icon": "MrScraper",
94513
94513
"legacy": false,
94514
94514
"metadata": {
94515
-
"code_hash": "3da55d924d54",
94515
+
"code_hash": "ed66be9e8776",
94516
94516
"dependencies": {
94517
94517
"dependencies": [
94518
94518
{
@@ -94584,7 +94584,7 @@
94584
94584
"show": true,
94585
94585
"title_case": false,
94586
94586
"type": "code",
94587
-
"value": "\"\"\"MrScraper component: load a single scraping result by ID.\"\"\"\n\nfrom lfx.custom.custom_component.component import Component\nfrom lfx.io import Output, SecretStrInput, StrInput\nfrom lfx.schema.data import Data\n\n\nclass MrscraperGetResult(Component):\n \"\"\"Langflow component wrapping MrScraper `get_result_by_id`.\"\"\"\n\n display_name: str = \"MrScraper Get Result Detail\"\n description: str = \"Retrieve the full details of a specific MrScraper scraping result by its ID.\"\n name = \"MrscraperGetResult\"\n icon: str = \"MrScraper\"\n documentation: str = \"https://docs.mrscraper.com\"\n\n inputs = [\n SecretStrInput(\n name=\"api_token\",\n display_name=\"MrScraper API Token\",\n required=True,\n password=True,\n info=\"Your MrScraper API token. Get yours at https://app.mrscraper.com.\",\n ),\n StrInput(\n name=\"result_id\",\n display_name=\"Result ID\",\n required=True,\n info=\"Unique identifier of the scraping result to retrieve.\",\n tool_mode=True,\n ),\n ]\n\n outputs = [\n Output(display_name=\"Result\", name=\"data\", method=\"get_result\"),\n ]\n\n async def get_result(self) -> Data:\n \"\"\"Return full detail for one result ID as `Data`.\"\"\"\n try:\n from mrscraper import MrScraper\n except ImportError as e:\n msg = \"Could not import mrscraper SDK. Please install it with `pip install mrscraper-sdk`.\"\n raise ImportError(msg) from e\n\n client = MrScraper(token=self.api_token)\n result = await client.get_result_by_id(result_id=self.result_id)\n return Data(data=result)\n"
94587
+
"value": "\"\"\"MrScraper component: load a single scraping result by ID.\"\"\"\n\nfrom lfx.custom.custom_component.component import Component\nfrom lfx.io import Output, SecretStrInput, StrInput\nfrom lfx.schema.data import Data\n\n\nclass MrscraperGetResult(Component):\n \"\"\"Langflow component wrapping MrScraper `get_result_by_id`.\"\"\"\n\n display_name: str = \"MrScraper Get Result Detail\"\n description: str = \"Retrieve the full details of a specific MrScraper scraping result by its ID.\"\n name = \"MrscraperGetResult\"\n icon: str = \"MrScraper\"\n documentation: str = \"https://docs.mrscraper.com\"\n\n inputs = [\n SecretStrInput(\n name=\"api_token\",\n display_name=\"MrScraper API Token\",\n required=True,\n password=True,\n info=\"Your MrScraper API token. Get yours at https://app.mrscraper.com.\",\n ),\n StrInput(\n name=\"result_id\",\n display_name=\"Result ID\",\n required=True,\n info=\"Unique identifier of the scraping result to retrieve.\",\n tool_mode=True,\n ),\n ]\n\n outputs = [\n Output(display_name=\"Result\", name=\"data\", method=\"get_result\"),\n ]\n\n async def get_result(self) -> Data:\n \"\"\"Return full detail for one result ID as `Data`.\"\"\"\n try:\n from mrscraper import MrScraper\n except ImportError as e:\n msg = \"Could not import mrscraper SDK. Please install it with `pip install mrscraper-sdk`.\"\n raise ImportError(msg) from e\n\n client = MrScraper(token=self.api_token)\n result = await client.get_result_by_id(result_id=self.result_id)\n return Data(data=result[\"data\"])\n"
0 commit comments