ecoscape-utilities 0.0.37__py3-none-any.whl → 0.0.38__py3-none-any.whl
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 ecoscape-utilities might be problematic. Click here for more details.
- ecoscape_utilities/ebird_db.py +32 -0
- {ecoscape_utilities-0.0.37.dist-info → ecoscape_utilities-0.0.38.dist-info}/METADATA +1 -1
- ecoscape_utilities-0.0.38.dist-info/RECORD +8 -0
- ecoscape_utilities-0.0.37.dist-info/RECORD +0 -8
- {ecoscape_utilities-0.0.37.dist-info → ecoscape_utilities-0.0.38.dist-info}/WHEEL +0 -0
- {ecoscape_utilities-0.0.37.dist-info → ecoscape_utilities-0.0.38.dist-info}/licenses/LICENSE.md +0 -0
- {ecoscape_utilities-0.0.37.dist-info → ecoscape_utilities-0.0.38.dist-info}/top_level.txt +0 -0
ecoscape_utilities/ebird_db.py
CHANGED
|
@@ -11,6 +11,34 @@ from pyproj.crs import CRS
|
|
|
11
11
|
|
|
12
12
|
from scgt import GeoTiff
|
|
13
13
|
|
|
14
|
+
def expand_sqlite_query(query, params):
|
|
15
|
+
"""
|
|
16
|
+
Expands an SQLite query string with named parameters from a dictionary.
|
|
17
|
+
|
|
18
|
+
Args:
|
|
19
|
+
query (str): The SQL query string with :variable placeholders.
|
|
20
|
+
params (dict): A dictionary mapping variable names to their values.
|
|
21
|
+
|
|
22
|
+
Returns:
|
|
23
|
+
str: The expanded SQL query string.
|
|
24
|
+
"""
|
|
25
|
+
expanded_query = query
|
|
26
|
+
for key, value in params.items():
|
|
27
|
+
placeholder = f":{key}"
|
|
28
|
+
if isinstance(value, str):
|
|
29
|
+
# Escape any single quotes within the string
|
|
30
|
+
formatted_value = f"'{value.replace("'", "''")}'"
|
|
31
|
+
elif value is None:
|
|
32
|
+
formatted_value = 'NULL'
|
|
33
|
+
else:
|
|
34
|
+
# For integers, floats, and other types
|
|
35
|
+
formatted_value = str(value)
|
|
36
|
+
|
|
37
|
+
expanded_query = expanded_query.replace(placeholder, formatted_value)
|
|
38
|
+
|
|
39
|
+
return expanded_query
|
|
40
|
+
|
|
41
|
+
|
|
14
42
|
"""
|
|
15
43
|
A module for interaction with a sqlite database. Contains functions for query execution,
|
|
16
44
|
and some common functionality we need to run on the DB
|
|
@@ -120,6 +148,7 @@ class EbirdObservations(Connection):
|
|
|
120
148
|
query_string = " ".join(query_string)
|
|
121
149
|
if verbose:
|
|
122
150
|
print("Query:", query_string)
|
|
151
|
+
print("Expanded query:", expand_sqlite_query(query_string, d))
|
|
123
152
|
squares_list = self.execute_query((query_string, d))
|
|
124
153
|
return [sq[0] for sq in squares_list]
|
|
125
154
|
|
|
@@ -220,6 +249,7 @@ class EbirdObservations(Connection):
|
|
|
220
249
|
query_string = " ".join(query_string)
|
|
221
250
|
if verbose:
|
|
222
251
|
print("Query:", query_string)
|
|
252
|
+
print("Expanded query:", expand_sqlite_query(query_string, d))
|
|
223
253
|
r = self.execute_query((query_string, d))
|
|
224
254
|
if r is None:
|
|
225
255
|
num_birds = 0
|
|
@@ -324,6 +354,7 @@ class EbirdObservations(Connection):
|
|
|
324
354
|
query_string = " ".join(query_string)
|
|
325
355
|
if verbose:
|
|
326
356
|
print("Query:", query_string)
|
|
357
|
+
print("Expanded query:", expand_sqlite_query(query_string, d))
|
|
327
358
|
rows = self.execute_query((query_string, d))
|
|
328
359
|
counts = defaultdict(int)
|
|
329
360
|
for r in rows:
|
|
@@ -380,6 +411,7 @@ class EbirdObservations(Connection):
|
|
|
380
411
|
query_string = " ".join(query_string)
|
|
381
412
|
if verbose:
|
|
382
413
|
print("Query:", query_string)
|
|
414
|
+
print("Expanded query:", expand_sqlite_query(query_string, d))
|
|
383
415
|
r = self.execute_query((query_string, d))
|
|
384
416
|
return [row[0] for row in r]
|
|
385
417
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: ecoscape-utilities
|
|
3
|
-
Version: 0.0.
|
|
3
|
+
Version: 0.0.38
|
|
4
4
|
Summary: A collection of EcoScape utilities.
|
|
5
5
|
Author-email: Luca de Alfaro <luca@ucsc.edu>, Coen Adler <ctadler@ucsc.edu>, Artie Nazarov <anazarov@ucsc.edu>, Natalia Ocampo-Peñuela <nocampop@ucsc.edu>, Jasmine Tai <cjtai@ucsc.edu>, Natalie Valett <nvalett@ucsc.edu>
|
|
6
6
|
Project-URL: Homepage, https://github.com/ecoscape-earth/ecoscape-utilities
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
ecoscape_utilities/__init__.py,sha256=LXt1rL9JVsjnCmsNZwZ2aoElphIK-koaEDdW6ffZsMQ,50
|
|
2
|
+
ecoscape_utilities/bird_runs.py,sha256=v43PfH_4ojpkTE-EFOJxr0oOW3M9suNm_1zMjZ9P-eI,5409
|
|
3
|
+
ecoscape_utilities/ebird_db.py,sha256=vMezw5AFIrd4RVITWbLpsZlDGBxig5CoVQMzT7XDeNk,28067
|
|
4
|
+
ecoscape_utilities-0.0.38.dist-info/licenses/LICENSE.md,sha256=3vh2mpA_XIR3FJot6a5F9DqktAoq45sEGIRkYjvAEeU,1304
|
|
5
|
+
ecoscape_utilities-0.0.38.dist-info/METADATA,sha256=E9tCnd-2Ipwy9tzDGz30uICoVmJ2mzuxrGUcuuZFGSs,1382
|
|
6
|
+
ecoscape_utilities-0.0.38.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
7
|
+
ecoscape_utilities-0.0.38.dist-info/top_level.txt,sha256=jLf7iMlySaJg0Vh8z4lbAaqOc5W5ruMgKFvp797CryQ,19
|
|
8
|
+
ecoscape_utilities-0.0.38.dist-info/RECORD,,
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
ecoscape_utilities/__init__.py,sha256=LXt1rL9JVsjnCmsNZwZ2aoElphIK-koaEDdW6ffZsMQ,50
|
|
2
|
-
ecoscape_utilities/bird_runs.py,sha256=v43PfH_4ojpkTE-EFOJxr0oOW3M9suNm_1zMjZ9P-eI,5409
|
|
3
|
-
ecoscape_utilities/ebird_db.py,sha256=gFtsQQaK8SoYl2aFyA-sq0qGRMjs2R1vPc_nohA4S48,26864
|
|
4
|
-
ecoscape_utilities-0.0.37.dist-info/licenses/LICENSE.md,sha256=3vh2mpA_XIR3FJot6a5F9DqktAoq45sEGIRkYjvAEeU,1304
|
|
5
|
-
ecoscape_utilities-0.0.37.dist-info/METADATA,sha256=uq0uWLLS5_cRjwB6Z0bTe3cnXRRSZuo-JrIfgIi3rKo,1382
|
|
6
|
-
ecoscape_utilities-0.0.37.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
7
|
-
ecoscape_utilities-0.0.37.dist-info/top_level.txt,sha256=jLf7iMlySaJg0Vh8z4lbAaqOc5W5ruMgKFvp797CryQ,19
|
|
8
|
-
ecoscape_utilities-0.0.37.dist-info/RECORD,,
|
|
File without changes
|
{ecoscape_utilities-0.0.37.dist-info → ecoscape_utilities-0.0.38.dist-info}/licenses/LICENSE.md
RENAMED
|
File without changes
|
|
File without changes
|