datamarket 0.7.93__tar.gz → 0.7.95__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 datamarket might be problematic. Click here for more details.
- {datamarket-0.7.93 → datamarket-0.7.95}/PKG-INFO +3 -1
- {datamarket-0.7.93 → datamarket-0.7.95}/pyproject.toml +3 -1
- {datamarket-0.7.93 → datamarket-0.7.95}/src/datamarket/interfaces/aws.py +13 -0
- {datamarket-0.7.93 → datamarket-0.7.95}/LICENSE +0 -0
- {datamarket-0.7.93 → datamarket-0.7.95}/README.md +0 -0
- {datamarket-0.7.93 → datamarket-0.7.95}/src/datamarket/__init__.py +0 -0
- {datamarket-0.7.93 → datamarket-0.7.95}/src/datamarket/exceptions/__init__.py +0 -0
- {datamarket-0.7.93 → datamarket-0.7.95}/src/datamarket/exceptions/main.py +0 -0
- {datamarket-0.7.93 → datamarket-0.7.95}/src/datamarket/interfaces/__init__.py +0 -0
- {datamarket-0.7.93 → datamarket-0.7.95}/src/datamarket/interfaces/alchemy.py +0 -0
- {datamarket-0.7.93 → datamarket-0.7.95}/src/datamarket/interfaces/azure.py +0 -0
- {datamarket-0.7.93 → datamarket-0.7.95}/src/datamarket/interfaces/drive.py +0 -0
- {datamarket-0.7.93 → datamarket-0.7.95}/src/datamarket/interfaces/ftp.py +0 -0
- {datamarket-0.7.93 → datamarket-0.7.95}/src/datamarket/interfaces/nominatim.py +0 -0
- {datamarket-0.7.93 → datamarket-0.7.95}/src/datamarket/interfaces/peerdb.py +0 -0
- {datamarket-0.7.93 → datamarket-0.7.95}/src/datamarket/interfaces/proxy.py +0 -0
- {datamarket-0.7.93 → datamarket-0.7.95}/src/datamarket/interfaces/tinybird.py +0 -0
- {datamarket-0.7.93 → datamarket-0.7.95}/src/datamarket/params/__init__.py +0 -0
- {datamarket-0.7.93 → datamarket-0.7.95}/src/datamarket/params/nominatim.py +0 -0
- {datamarket-0.7.93 → datamarket-0.7.95}/src/datamarket/utils/__init__.py +0 -0
- {datamarket-0.7.93 → datamarket-0.7.95}/src/datamarket/utils/airflow.py +0 -0
- {datamarket-0.7.93 → datamarket-0.7.95}/src/datamarket/utils/alchemy.py +0 -0
- {datamarket-0.7.93 → datamarket-0.7.95}/src/datamarket/utils/main.py +0 -0
- {datamarket-0.7.93 → datamarket-0.7.95}/src/datamarket/utils/nominatim.py +0 -0
- {datamarket-0.7.93 → datamarket-0.7.95}/src/datamarket/utils/playwright/__init__.py +0 -0
- {datamarket-0.7.93 → datamarket-0.7.95}/src/datamarket/utils/playwright/async_api.py +0 -0
- {datamarket-0.7.93 → datamarket-0.7.95}/src/datamarket/utils/playwright/sync_api.py +0 -0
- {datamarket-0.7.93 → datamarket-0.7.95}/src/datamarket/utils/selenium.py +0 -0
- {datamarket-0.7.93 → datamarket-0.7.95}/src/datamarket/utils/soda.py +0 -0
- {datamarket-0.7.93 → datamarket-0.7.95}/src/datamarket/utils/strings/__init__.py +0 -0
- {datamarket-0.7.93 → datamarket-0.7.95}/src/datamarket/utils/strings/normalization.py +0 -0
- {datamarket-0.7.93 → datamarket-0.7.95}/src/datamarket/utils/strings/obfuscation.py +0 -0
- {datamarket-0.7.93 → datamarket-0.7.95}/src/datamarket/utils/typer.py +0 -0
- {datamarket-0.7.93 → datamarket-0.7.95}/src/datamarket/utils/types.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: datamarket
|
|
3
|
-
Version: 0.7.
|
|
3
|
+
Version: 0.7.95
|
|
4
4
|
Summary: Utilities that integrate advanced scraping knowledge into just one library.
|
|
5
5
|
License: GPL-3.0-or-later
|
|
6
6
|
Author: DataMarket
|
|
@@ -44,6 +44,7 @@ Provides-Extra: pii
|
|
|
44
44
|
Provides-Extra: pillow
|
|
45
45
|
Provides-Extra: playwright
|
|
46
46
|
Provides-Extra: playwright-stealth
|
|
47
|
+
Provides-Extra: plotly
|
|
47
48
|
Provides-Extra: pyarrow
|
|
48
49
|
Provides-Extra: pydrive2
|
|
49
50
|
Provides-Extra: pymupdf
|
|
@@ -101,6 +102,7 @@ Requires-Dist: pandera (>=0.22.0,<0.23.0) ; extra == "pandera"
|
|
|
101
102
|
Requires-Dist: pendulum (>=3.0.0,<4.0.0)
|
|
102
103
|
Requires-Dist: pillow (>=11.0.0,<12.0.0) ; extra == "pillow"
|
|
103
104
|
Requires-Dist: playwright (==1.47.0) ; extra == "playwright" or extra == "camoufox"
|
|
105
|
+
Requires-Dist: plotly (>=6.0.0,<7.0.0) ; extra == "plotly"
|
|
104
106
|
Requires-Dist: pre-commit (>=4.0.0,<5.0.0)
|
|
105
107
|
Requires-Dist: presidio-analyzer[phonenumbers] (>=2.0.0,<3.0.0) ; extra == "pii"
|
|
106
108
|
Requires-Dist: presidio-anonymizer (>=2.0.0,<3.0.0) ; extra == "pii"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[tool.poetry]
|
|
2
2
|
name = "datamarket"
|
|
3
|
-
version = "0.7.
|
|
3
|
+
version = "0.7.95"
|
|
4
4
|
description = "Utilities that integrate advanced scraping knowledge into just one library."
|
|
5
5
|
authors = ["DataMarket <techsupport@datamarket.es>"]
|
|
6
6
|
license = "GPL-3.0-or-later"
|
|
@@ -90,6 +90,7 @@ pyproj = { version = "^3.0.0", optional = true }
|
|
|
90
90
|
sqlparse = { version = "~0.5.0", optional = true }
|
|
91
91
|
rnet = { version = "^2.0.0", optional = true }
|
|
92
92
|
matplotlib = { version = "^3.0.0", optional = true }
|
|
93
|
+
plotly = { version = "^6.0.0", optional = true }
|
|
93
94
|
|
|
94
95
|
[tool.poetry.extras]
|
|
95
96
|
boto3 = ["boto3"]
|
|
@@ -138,6 +139,7 @@ pyproj = ["pyproj"]
|
|
|
138
139
|
sqlparse = ["sqlparse"]
|
|
139
140
|
rnet = ["rnet"]
|
|
140
141
|
matplotlib = ["matplotlib"]
|
|
142
|
+
plotly = ["plotly"]
|
|
141
143
|
|
|
142
144
|
# Interface groups
|
|
143
145
|
aws = ["boto3"]
|
|
@@ -100,6 +100,19 @@ class AWSInterface:
|
|
|
100
100
|
logger.info(f"{s3_path} does not exist")
|
|
101
101
|
return None
|
|
102
102
|
|
|
103
|
+
def file_exists(self, s3_path: str) -> bool:
|
|
104
|
+
if not self.bucket:
|
|
105
|
+
logger.warning("No active bucket selected")
|
|
106
|
+
return False
|
|
107
|
+
try:
|
|
108
|
+
self.s3_client.head_object(Bucket=self.bucket, Key=s3_path)
|
|
109
|
+
return True
|
|
110
|
+
except self.s3_client.exceptions.NoSuchKey:
|
|
111
|
+
return False
|
|
112
|
+
except Exception as e:
|
|
113
|
+
logger.error(f"Error checking existence of {s3_path}: {e}")
|
|
114
|
+
raise
|
|
115
|
+
|
|
103
116
|
def read_file_as_bytes(self, s3_path: str) -> Optional[io.BytesIO]:
|
|
104
117
|
obj = self.get_file(s3_path)
|
|
105
118
|
if not obj:
|
|
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
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|