crawlora 1.47.0.dev1__tar.gz → 1.47.1.dev1__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.
Files changed (31) hide show
  1. {crawlora-1.47.0.dev1/crawlora.egg-info → crawlora-1.47.1.dev1}/PKG-INFO +1 -1
  2. {crawlora-1.47.0.dev1 → crawlora-1.47.1.dev1}/crawlora/client.py +1 -1
  3. {crawlora-1.47.0.dev1 → crawlora-1.47.1.dev1}/crawlora/client.pyi +29 -3
  4. {crawlora-1.47.0.dev1 → crawlora-1.47.1.dev1}/crawlora/operations.py +14 -1
  5. {crawlora-1.47.0.dev1 → crawlora-1.47.1.dev1/crawlora.egg-info}/PKG-INFO +1 -1
  6. {crawlora-1.47.0.dev1 → crawlora-1.47.1.dev1}/docs/operations.md +2 -2
  7. {crawlora-1.47.0.dev1 → crawlora-1.47.1.dev1}/pyproject.toml +1 -1
  8. {crawlora-1.47.0.dev1 → crawlora-1.47.1.dev1}/LICENSE +0 -0
  9. {crawlora-1.47.0.dev1 → crawlora-1.47.1.dev1}/MANIFEST.in +0 -0
  10. {crawlora-1.47.0.dev1 → crawlora-1.47.1.dev1}/README.md +0 -0
  11. {crawlora-1.47.0.dev1 → crawlora-1.47.1.dev1}/crawlora/__init__.py +0 -0
  12. {crawlora-1.47.0.dev1 → crawlora-1.47.1.dev1}/crawlora/_pagination.py +0 -0
  13. {crawlora-1.47.0.dev1 → crawlora-1.47.1.dev1}/crawlora/_transport_sync.py +0 -0
  14. {crawlora-1.47.0.dev1 → crawlora-1.47.1.dev1}/crawlora/async_client.py +0 -0
  15. {crawlora-1.47.0.dev1 → crawlora-1.47.1.dev1}/crawlora/py.typed +0 -0
  16. {crawlora-1.47.0.dev1 → crawlora-1.47.1.dev1}/crawlora.egg-info/SOURCES.txt +0 -0
  17. {crawlora-1.47.0.dev1 → crawlora-1.47.1.dev1}/crawlora.egg-info/dependency_links.txt +0 -0
  18. {crawlora-1.47.0.dev1 → crawlora-1.47.1.dev1}/crawlora.egg-info/requires.txt +0 -0
  19. {crawlora-1.47.0.dev1 → crawlora-1.47.1.dev1}/crawlora.egg-info/top_level.txt +0 -0
  20. {crawlora-1.47.0.dev1 → crawlora-1.47.1.dev1}/docs/recipes.md +0 -0
  21. {crawlora-1.47.0.dev1 → crawlora-1.47.1.dev1}/examples/async_search.py +0 -0
  22. {crawlora-1.47.0.dev1 → crawlora-1.47.1.dev1}/examples/bing_search.py +0 -0
  23. {crawlora-1.47.0.dev1 → crawlora-1.47.1.dev1}/examples/paginate.py +0 -0
  24. {crawlora-1.47.0.dev1 → crawlora-1.47.1.dev1}/examples/youtube_transcript.py +0 -0
  25. {crawlora-1.47.0.dev1 → crawlora-1.47.1.dev1}/setup.cfg +0 -0
  26. {crawlora-1.47.0.dev1 → crawlora-1.47.1.dev1}/tests/test_async_httpx.py +0 -0
  27. {crawlora-1.47.0.dev1 → crawlora-1.47.1.dev1}/tests/test_client.py +0 -0
  28. {crawlora-1.47.0.dev1 → crawlora-1.47.1.dev1}/tests/test_examples.py +0 -0
  29. {crawlora-1.47.0.dev1 → crawlora-1.47.1.dev1}/tests/test_v14_features.py +0 -0
  30. {crawlora-1.47.0.dev1 → crawlora-1.47.1.dev1}/tests/test_v15_features.py +0 -0
  31. {crawlora-1.47.0.dev1 → crawlora-1.47.1.dev1}/tests/test_w2_features.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: crawlora
3
- Version: 1.47.0.dev1
3
+ Version: 1.47.1.dev1
4
4
  Summary: Official Python SDK for the Crawlora web-scraping API: typed grouped and dynamic operation calls for every public endpoint, with retries, pagination, hooks, and an async client.
5
5
  Author: Crawlora
6
6
  License-Expression: MIT
@@ -20,7 +20,7 @@ from ._transport_sync import KeepAliveTransport
20
20
  from .operations import GROUPS, OPERATIONS
21
21
 
22
22
  DEFAULT_BASE_URL = "https://api.crawlora.net/api/v1"
23
- VERSION = "1.47.0-sdk.1"
23
+ VERSION = "1.47.1-sdk.1"
24
24
  DEFAULT_USER_AGENT = f"crawlora-python-sdk/{VERSION}"
25
25
  DEFAULT_MAX_RETRY_DELAY = 30.0
26
26
  DEFAULT_RETRY_STATUSES = (408, 409, 425, 429)
@@ -4748,8 +4748,10 @@ ModelBbbBusinessResponse = TypedDict('ModelBbbBusinessResponse', {
4748
4748
  'local_bbb_url': NotRequired[str],
4749
4749
  'more_info_url': NotRequired[str],
4750
4750
  'name': NotRequired[str],
4751
+ 'notice': NotRequired[str],
4751
4752
  'phone': NotRequired[str],
4752
4753
  'products_and_services': NotRequired[list[str]],
4754
+ 'profile_under_review': NotRequired[bool],
4753
4755
  'rating': NotRequired[str],
4754
4756
  'rating_reasons': NotRequired[list[str]],
4755
4757
  'social_media': NotRequired[list[str]],
@@ -4808,8 +4810,10 @@ ModelBbbComplaintsResponse = TypedDict('ModelBbbComplaintsResponse', {
4808
4810
  'filed_last_12_months': NotRequired[int],
4809
4811
  'has_more': NotRequired[bool],
4810
4812
  'hidden_complaints': NotRequired[int],
4813
+ 'notice': NotRequired[str],
4811
4814
  'page': NotRequired[int],
4812
4815
  'period_text': NotRequired[str],
4816
+ 'profile_under_review': NotRequired[bool],
4813
4817
  'published_complaints': NotRequired[int],
4814
4818
  'source_url': NotRequired[str],
4815
4819
  'submit_complaint_url': NotRequired[str],
@@ -4955,6 +4959,7 @@ ModelBbbdirectoryCountryRegions = TypedDict('ModelBbbdirectoryCountryRegions', {
4955
4959
  ModelBbbdirectoryLocalBbbchapter = TypedDict('ModelBbbdirectoryLocalBbbchapter', {
4956
4960
  'id': NotRequired[str],
4957
4961
  'name': NotRequired[str],
4962
+ 'news_url': NotRequired[str],
4958
4963
  'offices': NotRequired[list[ModelBbbdirectoryOffice]],
4959
4964
  'open_to_public': NotRequired[bool],
4960
4965
  'url': NotRequired[str],
@@ -4966,6 +4971,7 @@ ModelBbbdirectoryLocalBbbresponse = TypedDict('ModelBbbdirectoryLocalBbbresponse
4966
4971
  'id': NotRequired[str],
4967
4972
  'languages': NotRequired[list[str]],
4968
4973
  'name': NotRequired[str],
4974
+ 'news_url': NotRequired[str],
4969
4975
  'offices': NotRequired[list[ModelBbbdirectoryOffice]],
4970
4976
  'open_to_public': NotRequired[bool],
4971
4977
  'service_territory': NotRequired[list[str]],
@@ -5080,11 +5086,15 @@ ModelBbbnewsNewsItem = TypedDict('ModelBbbnewsNewsItem', {
5080
5086
  }, total=False)
5081
5087
 
5082
5088
  ModelBbbnewsNewsResponse = TypedDict('ModelBbbnewsNewsResponse', {
5083
- 'country': NotRequired[str],
5089
+ 'city': NotRequired[str],
5090
+ 'country': NotRequired[Literal['us', 'ca']],
5084
5091
  'items': NotRequired[list[ModelBbbnewsNewsItem]],
5092
+ 'local_bbb_id': NotRequired[str],
5093
+ 'local_bbb_name': NotRequired[str],
5085
5094
  'page': NotRequired[int],
5086
5095
  'page_size': NotRequired[int],
5087
5096
  'source_url': NotRequired[str],
5097
+ 'state': NotRequired[str],
5088
5098
  'topic': NotRequired[str],
5089
5099
  'total': NotRequired[int],
5090
5100
  }, total=False)
@@ -5096,8 +5106,12 @@ ModelBbbnewsTopic = TypedDict('ModelBbbnewsTopic', {
5096
5106
  }, total=False)
5097
5107
 
5098
5108
  ModelBbbnewsTopicsResponse = TypedDict('ModelBbbnewsTopicsResponse', {
5099
- 'country': NotRequired[str],
5109
+ 'city': NotRequired[str],
5110
+ 'country': NotRequired[Literal['us', 'ca']],
5111
+ 'local_bbb_id': NotRequired[str],
5112
+ 'local_bbb_name': NotRequired[str],
5100
5113
  'source_url': NotRequired[str],
5114
+ 'state': NotRequired[str],
5101
5115
  'topics': NotRequired[list[ModelBbbnewsTopic]],
5102
5116
  }, total=False)
5103
5117
 
@@ -13343,7 +13357,14 @@ ModelDatasetsAppsSearchResponse = TypedDict('ModelDatasetsAppsSearchResponse', {
13343
13357
  ModelDatasetsBbbbusinessesFacetResponse = TypedDict('ModelDatasetsBbbbusinessesFacetResponse', {
13344
13358
  'dataset': NotRequired[str],
13345
13359
  'facet': NotRequired[str],
13360
+ 'has_more': NotRequired[bool],
13346
13361
  'items': NotRequired[list[ModelEsBbbbusinessesFacetItem]],
13362
+ 'limit': NotRequired[int],
13363
+ 'missing': NotRequired[int],
13364
+ 'offset': NotRequired[int],
13365
+ 'total': NotRequired[int],
13366
+ 'total_values': NotRequired[int],
13367
+ 'values_truncated': NotRequired[bool],
13347
13368
  }, total=False)
13348
13369
 
13349
13370
  ModelDatasetsBbbbusinessesSearchResponse = TypedDict('ModelDatasetsBbbbusinessesSearchResponse', {
@@ -79119,12 +79140,16 @@ DatasetsBbbBusinessesFacetsParams = TypedDict('DatasetsBbbBusinessesFacetsParams
79119
79140
  '_response_type': NotRequired[ResponseType],
79120
79141
  '_timeout': NotRequired[float],
79121
79142
  '_headers': NotRequired[Mapping[str, str]],
79122
- 'facet': Required[Literal['category', 'state', 'city', 'rating', 'accredited', 'entity_type', 'run_id', 'alert_title', 'has_alerts']],
79143
+ 'facet': Required[Literal['country', 'category', 'state', 'city', 'rating', 'accredited', 'entity_type', 'run_id', 'alert_title', 'has_alerts']],
79144
+ 'limit': NotRequired[int],
79145
+ 'offset': NotRequired[int],
79123
79146
  'q': NotRequired[str],
79124
79147
  'category': NotRequired[str],
79148
+ 'country': NotRequired[Literal['us', 'ca']],
79125
79149
  'state': NotRequired[str],
79126
79150
  'city': NotRequired[str],
79127
79151
  'rating': NotRequired[Literal['A+', 'A', 'A-', 'B+', 'B', 'B-', 'C+', 'C', 'C-', 'D+', 'D', 'D-', 'F']],
79152
+ 'min_rating_rank': NotRequired[int],
79128
79153
  'accredited': NotRequired[bool],
79129
79154
  'has_alerts': NotRequired[bool],
79130
79155
  'alert_title': NotRequired[str],
@@ -79148,6 +79173,7 @@ DatasetsBbbBusinessesSearchParams = TypedDict('DatasetsBbbBusinessesSearchParams
79148
79173
  '_headers': NotRequired[Mapping[str, str]],
79149
79174
  'q': NotRequired[str],
79150
79175
  'category': NotRequired[str],
79176
+ 'country': NotRequired[Literal['us', 'ca']],
79151
79177
  'state': NotRequired[str],
79152
79178
  'city': NotRequired[str],
79153
79179
  'rating': NotRequired[Literal['A+', 'A', 'A-', 'B+', 'B', 'B-', 'C+', 'C', 'C-', 'D+', 'D', 'D-', 'F']],
@@ -11780,10 +11780,12 @@ OPERATIONS = {'7now-catalog': {'bodyParam': None,
11780
11780
  'formParams': [],
11781
11781
  'id': 'datasets-bbb-businesses-facets',
11782
11782
  'method': 'GET',
11783
+ 'paginatable': True,
11783
11784
  'path': '/datasets/bbb-businesses/facets',
11784
11785
  'pathParams': [],
11785
11786
  'produces': ['application/json'],
11786
- 'queryParams': [{'enum': ['category',
11787
+ 'queryParams': [{'enum': ['country',
11788
+ 'category',
11787
11789
  'state',
11788
11790
  'city',
11789
11791
  'rating',
@@ -11796,8 +11798,14 @@ OPERATIONS = {'7now-catalog': {'bodyParam': None,
11796
11798
  'name': 'facet',
11797
11799
  'required': True,
11798
11800
  'type': 'string'},
11801
+ {'in': 'query', 'name': 'limit', 'type': 'integer'},
11802
+ {'in': 'query', 'name': 'offset', 'type': 'integer'},
11799
11803
  {'in': 'query', 'name': 'q', 'type': 'string'},
11800
11804
  {'in': 'query', 'name': 'category', 'type': 'string'},
11805
+ {'enum': ['us', 'ca'],
11806
+ 'in': 'query',
11807
+ 'name': 'country',
11808
+ 'type': 'string'},
11801
11809
  {'in': 'query', 'name': 'state', 'type': 'string'},
11802
11810
  {'in': 'query', 'name': 'city', 'type': 'string'},
11803
11811
  {'enum': ['A+',
@@ -11816,6 +11824,7 @@ OPERATIONS = {'7now-catalog': {'bodyParam': None,
11816
11824
  'in': 'query',
11817
11825
  'name': 'rating',
11818
11826
  'type': 'string'},
11827
+ {'in': 'query', 'name': 'min_rating_rank', 'type': 'integer'},
11819
11828
  {'in': 'query', 'name': 'accredited', 'type': 'boolean'},
11820
11829
  {'in': 'query', 'name': 'has_alerts', 'type': 'boolean'},
11821
11830
  {'in': 'query', 'name': 'alert_title', 'type': 'string'},
@@ -11846,6 +11855,10 @@ OPERATIONS = {'7now-catalog': {'bodyParam': None,
11846
11855
  'produces': ['application/json'],
11847
11856
  'queryParams': [{'in': 'query', 'name': 'q', 'type': 'string'},
11848
11857
  {'in': 'query', 'name': 'category', 'type': 'string'},
11858
+ {'enum': ['us', 'ca'],
11859
+ 'in': 'query',
11860
+ 'name': 'country',
11861
+ 'type': 'string'},
11849
11862
  {'in': 'query', 'name': 'state', 'type': 'string'},
11850
11863
  {'in': 'query', 'name': 'city', 'type': 'string'},
11851
11864
  {'enum': ['A+',
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: crawlora
3
- Version: 1.47.0.dev1
3
+ Version: 1.47.1.dev1
4
4
  Summary: Official Python SDK for the Crawlora web-scraping API: typed grouped and dynamic operation calls for every public endpoint, with retries, pagination, hooks, and an async client.
5
5
  Author: Crawlora
6
6
  License-Expression: MIT
@@ -663,9 +663,9 @@ Total operations: `3695`
663
663
  | datasets | `datasets.apps_charts_search` | `datasets-apps-charts-search` | `GET /datasets/apps-charts/search` | `q` (query str)<br>`store` (query Literal['ios', 'android'])<br>`chart_type` (query Literal['top_free', 'top_paid', 'top_grossing', 'new'])<br>`platform` (query str)<br>`collection` (query str)<br>`category` (query str)<br>`country` (query str)<br>`app_id` (query str)<br>`date` (query str)<br>`sort` (query Literal['rank', 'rank_desc', 'date_desc'])<br>`page` (query int)<br>`page_size` (query int) | `ApiKeyAuth` | `DatasetsAppsChartsSearchResponse` | |
664
664
  | datasets | `datasets.apps_reviews_search` | `datasets-apps-reviews-search` | `GET /datasets/apps-reviews/search` | `q` (query str)<br>`store` (query Literal['ios', 'android'])<br>`app_id` (query str)<br>`country` (query str)<br>`min_score` (query int)<br>`sort` (query Literal['recent', 'score_desc', 'score_asc', 'helpful_desc'])<br>`page` (query int)<br>`page_size` (query int) | `ApiKeyAuth` | `DatasetsAppsReviewsSearchResponse` | |
665
665
  | datasets | `datasets.apps_search` | `datasets-apps-search` | `GET /datasets/apps/search` | `q` (query str)<br>`store` (query Literal['ios', 'android', 'both'])<br>`platforms` (query list[str])<br>`category` (query str)<br>`country` (query str)<br>`developer` (query str)<br>`free` (query bool)<br>`min_rating` (query float)<br>`min_reviews` (query int)<br>`sort` (query Literal['relevance', 'rating_desc', 'reviews_desc', 'installs_desc', 'updated_at_desc', 'popularity_desc'])<br>`page` (query int)<br>`page_size` (query int) | `ApiKeyAuth` | `DatasetsAppsSearchResponse` | |
666
- | datasets | `datasets.bbb_businesses_facets` | `datasets-bbb-businesses-facets` | `GET /datasets/bbb-businesses/facets` | `facet` (query Literal['category', 'state', 'city', 'rating', 'accredited', 'entity_type', 'run_id', 'alert_title', 'has_alerts'] required)<br>`q` (query str)<br>`category` (query str)<br>`state` (query str)<br>`city` (query str)<br>`rating` (query Literal['A+', 'A', 'A-', 'B+', 'B', 'B-', 'C+', 'C', 'C-', 'D+', 'D', 'D-', 'F'])<br>`accredited` (query bool)<br>`has_alerts` (query bool)<br>`alert_title` (query str)<br>`min_complaints` (query int)<br>`entity_type` (query str)<br>`run_id` (query str) | `ApiKeyAuth` | `DatasetsBbbBusinessesFacetsResponse` | |
666
+ | datasets | `datasets.bbb_businesses_facets` | `datasets-bbb-businesses-facets` | `GET /datasets/bbb-businesses/facets` | `facet` (query Literal['country', 'category', 'state', 'city', 'rating', 'accredited', 'entity_type', 'run_id', 'alert_title', 'has_alerts'] required)<br>`limit` (query int)<br>`offset` (query int)<br>`q` (query str)<br>`category` (query str)<br>`country` (query Literal['us', 'ca'])<br>`state` (query str)<br>`city` (query str)<br>`rating` (query Literal['A+', 'A', 'A-', 'B+', 'B', 'B-', 'C+', 'C', 'C-', 'D+', 'D', 'D-', 'F'])<br>`min_rating_rank` (query int)<br>`accredited` (query bool)<br>`has_alerts` (query bool)<br>`alert_title` (query str)<br>`min_complaints` (query int)<br>`entity_type` (query str)<br>`run_id` (query str) | `ApiKeyAuth` | `DatasetsBbbBusinessesFacetsResponse` | |
667
667
  | datasets | `datasets.bbb_businesses_item` | `datasets-bbb-businesses-item` | `GET /datasets/bbb-businesses/items/{id}` | `id` (path str required) | `ApiKeyAuth` | `DatasetsBbbBusinessesItemResponse` | |
668
- | datasets | `datasets.bbb_businesses_search` | `datasets-bbb-businesses-search` | `GET /datasets/bbb-businesses/search` | `q` (query str)<br>`category` (query str)<br>`state` (query str)<br>`city` (query str)<br>`rating` (query Literal['A+', 'A', 'A-', 'B+', 'B', 'B-', 'C+', 'C', 'C-', 'D+', 'D', 'D-', 'F'])<br>`min_rating_rank` (query int)<br>`accredited` (query bool)<br>`has_alerts` (query bool)<br>`alert_title` (query str)<br>`min_complaints` (query int)<br>`entity_type` (query str)<br>`run_id` (query str)<br>`sort` (query Literal['relevance', 'rating_desc', 'rating_asc', 'accredited_first', 'name_asc', 'years_in_business_desc', 'complaints_desc'])<br>`page` (query int)<br>`page_size` (query int) | `ApiKeyAuth` | `DatasetsBbbBusinessesSearchResponse` | |
668
+ | datasets | `datasets.bbb_businesses_search` | `datasets-bbb-businesses-search` | `GET /datasets/bbb-businesses/search` | `q` (query str)<br>`category` (query str)<br>`country` (query Literal['us', 'ca'])<br>`state` (query str)<br>`city` (query str)<br>`rating` (query Literal['A+', 'A', 'A-', 'B+', 'B', 'B-', 'C+', 'C', 'C-', 'D+', 'D', 'D-', 'F'])<br>`min_rating_rank` (query int)<br>`accredited` (query bool)<br>`has_alerts` (query bool)<br>`alert_title` (query str)<br>`min_complaints` (query int)<br>`entity_type` (query str)<br>`run_id` (query str)<br>`sort` (query Literal['relevance', 'rating_desc', 'rating_asc', 'accredited_first', 'name_asc', 'years_in_business_desc', 'complaints_desc'])<br>`page` (query int)<br>`page_size` (query int) | `ApiKeyAuth` | `DatasetsBbbBusinessesSearchResponse` | |
669
669
  | datasets | `datasets.bbb_scamtracker_reports_facets` | `datasets-bbb-scamtracker-reports-facets` | `GET /datasets/bbb-scamtracker-reports/facets` | `facet` (query Literal['scam_type', 'state', 'country'] required)<br>`q` (query str)<br>`scam_type` (query str)<br>`state` (query str)<br>`country` (query Literal['USA', 'CAN'])<br>`date_from` (query str)<br>`date_to` (query str)<br>`min_loss` (query float)<br>`max_loss` (query float) | `ApiKeyAuth` | `DatasetsBbbScamtrackerReportsFacetsResponse` | |
670
670
  | datasets | `datasets.bbb_scamtracker_reports_item` | `datasets-bbb-scamtracker-reports-item` | `GET /datasets/bbb-scamtracker-reports/items/{id}` | `id` (path str required) | `ApiKeyAuth` | `DatasetsBbbScamtrackerReportsItemResponse` | |
671
671
  | datasets | `datasets.bbb_scamtracker_reports_search` | `datasets-bbb-scamtracker-reports-search` | `GET /datasets/bbb-scamtracker-reports/search` | `q` (query str)<br>`scam_type` (query str)<br>`state` (query str)<br>`country` (query Literal['USA', 'CAN'])<br>`date_from` (query str)<br>`date_to` (query str)<br>`min_loss` (query float)<br>`max_loss` (query float)<br>`sort` (query Literal['relevance', 'reported_desc', 'reported_asc', 'loss_desc'])<br>`page` (query int)<br>`page_size` (query int) | `ApiKeyAuth` | `DatasetsBbbScamtrackerReportsSearchResponse` | |
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "crawlora"
7
- version = "1.47.0.dev1"
7
+ version = "1.47.1.dev1"
8
8
  description = "Official Python SDK for the Crawlora web-scraping API: typed grouped and dynamic operation calls for every public endpoint, with retries, pagination, hooks, and an async client."
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.10"
File without changes
File without changes
File without changes