firecrawl 2.16.0__tar.gz → 2.16.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of firecrawl might be problematic. Click here for more details.
- {firecrawl-2.16.0 → firecrawl-2.16.2}/PKG-INFO +1 -1
- {firecrawl-2.16.0 → firecrawl-2.16.2}/firecrawl/__init__.py +1 -1
- {firecrawl-2.16.0 → firecrawl-2.16.2}/firecrawl/firecrawl.py +12 -14
- {firecrawl-2.16.0 → firecrawl-2.16.2}/firecrawl.egg-info/PKG-INFO +1 -1
- {firecrawl-2.16.0 → firecrawl-2.16.2}/LICENSE +0 -0
- {firecrawl-2.16.0 → firecrawl-2.16.2}/README.md +0 -0
- {firecrawl-2.16.0 → firecrawl-2.16.2}/firecrawl/__tests__/e2e_withAuth/__init__.py +0 -0
- {firecrawl-2.16.0 → firecrawl-2.16.2}/firecrawl/__tests__/e2e_withAuth/test.py +0 -0
- {firecrawl-2.16.0 → firecrawl-2.16.2}/firecrawl/__tests__/v1/e2e_withAuth/__init__.py +0 -0
- {firecrawl-2.16.0 → firecrawl-2.16.2}/firecrawl/__tests__/v1/e2e_withAuth/test.py +0 -0
- {firecrawl-2.16.0 → firecrawl-2.16.2}/firecrawl.egg-info/SOURCES.txt +0 -0
- {firecrawl-2.16.0 → firecrawl-2.16.2}/firecrawl.egg-info/dependency_links.txt +0 -0
- {firecrawl-2.16.0 → firecrawl-2.16.2}/firecrawl.egg-info/requires.txt +0 -0
- {firecrawl-2.16.0 → firecrawl-2.16.2}/firecrawl.egg-info/top_level.txt +0 -0
- {firecrawl-2.16.0 → firecrawl-2.16.2}/pyproject.toml +0 -0
- {firecrawl-2.16.0 → firecrawl-2.16.2}/setup.cfg +0 -0
- {firecrawl-2.16.0 → firecrawl-2.16.2}/setup.py +0 -0
- {firecrawl-2.16.0 → firecrawl-2.16.2}/tests/test_change_tracking.py +0 -0
|
@@ -13,7 +13,7 @@ import os
|
|
|
13
13
|
|
|
14
14
|
from .firecrawl import FirecrawlApp, AsyncFirecrawlApp, JsonConfig, ScrapeOptions, ChangeTrackingOptions # noqa
|
|
15
15
|
|
|
16
|
-
__version__ = "2.16.
|
|
16
|
+
__version__ = "2.16.2"
|
|
17
17
|
|
|
18
18
|
# Define the logger for the Firecrawl project
|
|
19
19
|
logger: logging.Logger = logging.getLogger("firecrawl")
|
|
@@ -1372,8 +1372,8 @@ class FirecrawlApp:
|
|
|
1372
1372
|
if isinstance(json_options, dict) and "schema" in json_options:
|
|
1373
1373
|
json_options["schema"] = self._ensure_schema_dict(json_options["schema"])
|
|
1374
1374
|
scrape_params['jsonOptions'] = json_options if isinstance(json_options, dict) else json_options.dict(exclude_none=True)
|
|
1375
|
-
if actions
|
|
1376
|
-
scrape_params['actions'] = [action.dict(exclude_none=True) for action in actions]
|
|
1375
|
+
if actions:
|
|
1376
|
+
scrape_params['actions'] = [action if isinstance(action, dict) else action.dict(exclude_none=True) for action in actions]
|
|
1377
1377
|
if agent is not None:
|
|
1378
1378
|
scrape_params['agent'] = agent.dict(exclude_none=True)
|
|
1379
1379
|
if max_concurrency is not None:
|
|
@@ -1513,8 +1513,8 @@ class FirecrawlApp:
|
|
|
1513
1513
|
if isinstance(json_options, dict) and "schema" in json_options:
|
|
1514
1514
|
json_options["schema"] = self._ensure_schema_dict(json_options["schema"])
|
|
1515
1515
|
scrape_params['jsonOptions'] = json_options if isinstance(json_options, dict) else json_options.dict(exclude_none=True)
|
|
1516
|
-
if actions
|
|
1517
|
-
scrape_params['actions'] = [action.dict(exclude_none=True) for action in actions]
|
|
1516
|
+
if actions:
|
|
1517
|
+
scrape_params['actions'] = [action if isinstance(action, dict) else action.dict(exclude_none=True) for action in actions]
|
|
1518
1518
|
if agent is not None:
|
|
1519
1519
|
scrape_params['agent'] = agent.dict(exclude_none=True)
|
|
1520
1520
|
if max_concurrency is not None:
|
|
@@ -1649,8 +1649,8 @@ class FirecrawlApp:
|
|
|
1649
1649
|
if isinstance(json_options, dict) and "schema" in json_options:
|
|
1650
1650
|
json_options["schema"] = self._ensure_schema_dict(json_options["schema"])
|
|
1651
1651
|
scrape_params['jsonOptions'] = json_options if isinstance(json_options, dict) else json_options.dict(exclude_none=True)
|
|
1652
|
-
if actions
|
|
1653
|
-
scrape_params['actions'] = [action.dict(exclude_none=True) for action in actions]
|
|
1652
|
+
if actions:
|
|
1653
|
+
scrape_params['actions'] = [action if isinstance(action, dict) else action.dict(exclude_none=True) for action in actions]
|
|
1654
1654
|
if agent is not None:
|
|
1655
1655
|
scrape_params['agent'] = agent.dict(exclude_none=True)
|
|
1656
1656
|
if max_concurrency is not None:
|
|
@@ -3074,7 +3074,6 @@ class AsyncFirecrawlApp(FirecrawlApp):
|
|
|
3074
3074
|
scrape_params['jsonOptions'] = json_options if isinstance(json_options, dict) else json_options.dict(exclude_none=True)
|
|
3075
3075
|
if actions:
|
|
3076
3076
|
scrape_params['actions'] = [action if isinstance(action, dict) else action.dict(exclude_none=True) for action in actions]
|
|
3077
|
-
|
|
3078
3077
|
if 'extract' in scrape_params and scrape_params['extract'] and 'schema' in scrape_params['extract']:
|
|
3079
3078
|
scrape_params['extract']['schema'] = self._ensure_schema_dict(scrape_params['extract']['schema'])
|
|
3080
3079
|
if 'jsonOptions' in scrape_params and scrape_params['jsonOptions'] and 'schema' in scrape_params['jsonOptions']:
|
|
@@ -3199,8 +3198,7 @@ class AsyncFirecrawlApp(FirecrawlApp):
|
|
|
3199
3198
|
if isinstance(json_options, dict) and "schema" in json_options:
|
|
3200
3199
|
json_options["schema"] = self._ensure_schema_dict(json_options["schema"])
|
|
3201
3200
|
scrape_params['jsonOptions'] = json_options if isinstance(json_options, dict) else json_options.dict(exclude_none=True)
|
|
3202
|
-
|
|
3203
|
-
scrape_params['actions'] = [action.dict(exclude_none=True) for action in actions]
|
|
3201
|
+
|
|
3204
3202
|
if agent is not None:
|
|
3205
3203
|
scrape_params['agent'] = agent.dict(exclude_none=True)
|
|
3206
3204
|
|
|
@@ -3339,8 +3337,8 @@ class AsyncFirecrawlApp(FirecrawlApp):
|
|
|
3339
3337
|
if isinstance(json_options, dict) and "schema" in json_options:
|
|
3340
3338
|
json_options["schema"] = self._ensure_schema_dict(json_options["schema"])
|
|
3341
3339
|
scrape_params['jsonOptions'] = json_options if isinstance(json_options, dict) else json_options.dict(exclude_none=True)
|
|
3342
|
-
if actions
|
|
3343
|
-
scrape_params['actions'] = [action.dict(exclude_none=True) for action in actions]
|
|
3340
|
+
if actions:
|
|
3341
|
+
scrape_params['actions'] = [action if isinstance(action, dict) else action.dict(exclude_none=True) for action in actions]
|
|
3344
3342
|
if agent is not None:
|
|
3345
3343
|
scrape_params['agent'] = agent.dict(exclude_none=True)
|
|
3346
3344
|
if zero_data_retention is not None:
|
|
@@ -3374,7 +3372,7 @@ class AsyncFirecrawlApp(FirecrawlApp):
|
|
|
3374
3372
|
except:
|
|
3375
3373
|
raise Exception(f'Failed to parse Firecrawl response as JSON.')
|
|
3376
3374
|
else:
|
|
3377
|
-
self._handle_error(response, 'start batch scrape job')
|
|
3375
|
+
await self._handle_error(response, 'start batch scrape job')
|
|
3378
3376
|
|
|
3379
3377
|
async def crawl_url(
|
|
3380
3378
|
self,
|
|
@@ -3493,7 +3491,7 @@ class AsyncFirecrawlApp(FirecrawlApp):
|
|
|
3493
3491
|
raise Exception(f'Failed to parse Firecrawl response as JSON.')
|
|
3494
3492
|
return await self._async_monitor_job_status(id, headers, poll_interval)
|
|
3495
3493
|
else:
|
|
3496
|
-
self._handle_error(response, 'start crawl job')
|
|
3494
|
+
await self._handle_error(response, 'start crawl job')
|
|
3497
3495
|
|
|
3498
3496
|
|
|
3499
3497
|
async def async_crawl_url(
|
|
@@ -3611,7 +3609,7 @@ class AsyncFirecrawlApp(FirecrawlApp):
|
|
|
3611
3609
|
except:
|
|
3612
3610
|
raise Exception(f'Failed to parse Firecrawl response as JSON.')
|
|
3613
3611
|
else:
|
|
3614
|
-
self._handle_error(response, 'start crawl job')
|
|
3612
|
+
await self._handle_error(response, 'start crawl job')
|
|
3615
3613
|
|
|
3616
3614
|
async def check_crawl_status(self, id: str) -> CrawlStatusResponse:
|
|
3617
3615
|
"""
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|