summaryrefslogtreecommitdiff
path: root/python-directaccess.spec
diff options
context:
space:
mode:
Diffstat (limited to 'python-directaccess.spec')
-rw-r--r--python-directaccess.spec445
1 files changed, 445 insertions, 0 deletions
diff --git a/python-directaccess.spec b/python-directaccess.spec
new file mode 100644
index 0000000..a0b1381
--- /dev/null
+++ b/python-directaccess.spec
@@ -0,0 +1,445 @@
+%global _empty_manifest_terminate_build 0
+Name: python-directaccess
+Version: 1.5.2
+Release: 1
+Summary: Enverus Direct Access API Python Client
+License: MIT
+URL: https://github.com/wchatx/direct-access-py
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/5b/d1/24d6d5d0f1ad1288fab35498f5f24ae7bb7ff97415141c89a7aea1471de3/directaccess-1.5.2.tar.gz
+BuildArch: noarch
+
+Requires: python3-requests
+Requires: python3-unicodecsv
+Requires: python3-urllib3
+Requires: python3-pandas
+
+%description
+# direct-access-py
+![directaccess](https://github.com/wchatx/direct-access-py/workflows/directaccess/badge.svg)
+[![PyPI version](https://badge.fury.io/py/directaccess.svg)](https://badge.fury.io/py/directaccess)
+
+A thin wrapper around Drillinginfo's Direct Access API. Handles authentication and token management, pagination and
+network-related error handling/retries.
+
+This module is built and tested on Python 3.6 but should work on Python 2.7 and up.
+
+
+## Install
+```commandline
+pip install directaccess
+```
+
+## Usage
+
+### Direct Access Version 1 (deprecated)
+Version 1 of the API has been deprecated and removed.
+
+### Direct Access Version 2
+For version 2 of the API, create an instance of the DirectAccessV2 class, providing it your API key, client id and client secret.
+The returned access token will be available as an attribute on the instance (d2.access_token) and the Authorization
+header is set automatically
+```python
+from directaccess import DirectAccessV2
+
+d2 = DirectAccessV2(
+ api_key='<your-api-key>',
+ client_id='<your-client-id>',
+ client_secret='<your-client-secret>',
+)
+```
+
+Provide the query method the dataset and query params. All query parameters must match the valid
+parameters found in the Direct Access documentation and be passed as keyword arguments.
+```python
+for row in d2.query('well-origins', county='REEVES', pagesize=10000):
+ print(row)
+```
+
+### Filter functions
+Direct Access version 2 supports filter funtions. These can be passed as strings on the keyword arguments.
+
+Some common filters are greater than (`gt()`), less than (`lt()`), null, not null (`not(null)`) and between (`btw()`).
+See the Direct Access documentation for a list of all available filters.
+
+```python
+# Get well records updated after 2018-08-01 and without deleted dates
+for row in d2.query('well-origins', updateddate='gt(2018-08-01)', deleteddate='null'):
+ print(row)
+
+# Get permit records with approved dates between 2018-03-01 and 2018-06-01
+for row in d2.query('permits', approveddate='btw(2018-03-01,2018-06-01)'):
+ print(row)
+```
+
+You can use the `fields` keyword to limit the returned fields in your request.
+```python
+for row in d2.query('rigs', fields='DrillType,LeaseName,PermitDepth'):
+ print(row)
+
+```
+
+### Escaping
+When making requests containing certain characters like commas, use a backslash to escape them.
+```python
+# Escaping the comma before LLC
+for row in d2.query('producing-entities', curropername='PERCUSSION PETROLEUM OPERATING\, LLC'):
+ print(row)
+
+```
+
+### Network request handling
+This module exposes functionality in python-requests for modifying network requests handling, namely:
+* retries and backoff
+* network proxies
+* ssl verification
+
+#### Retries and backoff
+Specify the number of retry attempts in `retries` and the backoff factor in `backoff_factor`. See the urllib3
+[Retry](https://urllib3.readthedocs.io/en/latest/reference/urllib3.util.html#urllib3.util.Retry) utility API for more info
+```python
+from directaccess import DirectAccessV2
+
+d2 = DirectAccessV2(
+ api_key='<your-api-key>',
+ client_id='<your-client-id>',
+ client_secret='<your-client-secret>',
+ retries=5,
+ backoff_factor=1
+)
+```
+
+You can specify a network proxy by passing a dictionary with the host and port of your proxy to `proxies`. See the
+[proxies](https://requests.readthedocs.io/en/master/user/advanced/#proxies) section of the python-requests documentation
+for more info.
+```python
+from directaccess import DirectAccessV2
+
+d2 = DirectAccessV2(
+ api_key='<your-api-key>',
+ client_id='<your-client-id>',
+ client_secret='<your-client-secret>',
+ proxies={'https': 'http://10.10.1.10:1080'}
+)
+```
+
+Finally, if you're in an environment that provides its own SSL certificates that might not be in your trusted store,
+you can choose to ignore SSL verification altogether. This is typically not a good idea and you should seek to resolve
+certificate errors instead of ignore them.
+```python
+from directaccess import DirectAccessV2
+
+d2 = DirectAccessV2(
+ api_key='<your-api-key>',
+ client_id='<your-client-id>',
+ client_secret='<your-client-secret>',
+ verify=False
+)
+```
+
+
+
+
+%package -n python3-directaccess
+Summary: Enverus Direct Access API Python Client
+Provides: python-directaccess
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-directaccess
+# direct-access-py
+![directaccess](https://github.com/wchatx/direct-access-py/workflows/directaccess/badge.svg)
+[![PyPI version](https://badge.fury.io/py/directaccess.svg)](https://badge.fury.io/py/directaccess)
+
+A thin wrapper around Drillinginfo's Direct Access API. Handles authentication and token management, pagination and
+network-related error handling/retries.
+
+This module is built and tested on Python 3.6 but should work on Python 2.7 and up.
+
+
+## Install
+```commandline
+pip install directaccess
+```
+
+## Usage
+
+### Direct Access Version 1 (deprecated)
+Version 1 of the API has been deprecated and removed.
+
+### Direct Access Version 2
+For version 2 of the API, create an instance of the DirectAccessV2 class, providing it your API key, client id and client secret.
+The returned access token will be available as an attribute on the instance (d2.access_token) and the Authorization
+header is set automatically
+```python
+from directaccess import DirectAccessV2
+
+d2 = DirectAccessV2(
+ api_key='<your-api-key>',
+ client_id='<your-client-id>',
+ client_secret='<your-client-secret>',
+)
+```
+
+Provide the query method the dataset and query params. All query parameters must match the valid
+parameters found in the Direct Access documentation and be passed as keyword arguments.
+```python
+for row in d2.query('well-origins', county='REEVES', pagesize=10000):
+ print(row)
+```
+
+### Filter functions
+Direct Access version 2 supports filter funtions. These can be passed as strings on the keyword arguments.
+
+Some common filters are greater than (`gt()`), less than (`lt()`), null, not null (`not(null)`) and between (`btw()`).
+See the Direct Access documentation for a list of all available filters.
+
+```python
+# Get well records updated after 2018-08-01 and without deleted dates
+for row in d2.query('well-origins', updateddate='gt(2018-08-01)', deleteddate='null'):
+ print(row)
+
+# Get permit records with approved dates between 2018-03-01 and 2018-06-01
+for row in d2.query('permits', approveddate='btw(2018-03-01,2018-06-01)'):
+ print(row)
+```
+
+You can use the `fields` keyword to limit the returned fields in your request.
+```python
+for row in d2.query('rigs', fields='DrillType,LeaseName,PermitDepth'):
+ print(row)
+
+```
+
+### Escaping
+When making requests containing certain characters like commas, use a backslash to escape them.
+```python
+# Escaping the comma before LLC
+for row in d2.query('producing-entities', curropername='PERCUSSION PETROLEUM OPERATING\, LLC'):
+ print(row)
+
+```
+
+### Network request handling
+This module exposes functionality in python-requests for modifying network requests handling, namely:
+* retries and backoff
+* network proxies
+* ssl verification
+
+#### Retries and backoff
+Specify the number of retry attempts in `retries` and the backoff factor in `backoff_factor`. See the urllib3
+[Retry](https://urllib3.readthedocs.io/en/latest/reference/urllib3.util.html#urllib3.util.Retry) utility API for more info
+```python
+from directaccess import DirectAccessV2
+
+d2 = DirectAccessV2(
+ api_key='<your-api-key>',
+ client_id='<your-client-id>',
+ client_secret='<your-client-secret>',
+ retries=5,
+ backoff_factor=1
+)
+```
+
+You can specify a network proxy by passing a dictionary with the host and port of your proxy to `proxies`. See the
+[proxies](https://requests.readthedocs.io/en/master/user/advanced/#proxies) section of the python-requests documentation
+for more info.
+```python
+from directaccess import DirectAccessV2
+
+d2 = DirectAccessV2(
+ api_key='<your-api-key>',
+ client_id='<your-client-id>',
+ client_secret='<your-client-secret>',
+ proxies={'https': 'http://10.10.1.10:1080'}
+)
+```
+
+Finally, if you're in an environment that provides its own SSL certificates that might not be in your trusted store,
+you can choose to ignore SSL verification altogether. This is typically not a good idea and you should seek to resolve
+certificate errors instead of ignore them.
+```python
+from directaccess import DirectAccessV2
+
+d2 = DirectAccessV2(
+ api_key='<your-api-key>',
+ client_id='<your-client-id>',
+ client_secret='<your-client-secret>',
+ verify=False
+)
+```
+
+
+
+
+%package help
+Summary: Development documents and examples for directaccess
+Provides: python3-directaccess-doc
+%description help
+# direct-access-py
+![directaccess](https://github.com/wchatx/direct-access-py/workflows/directaccess/badge.svg)
+[![PyPI version](https://badge.fury.io/py/directaccess.svg)](https://badge.fury.io/py/directaccess)
+
+A thin wrapper around Drillinginfo's Direct Access API. Handles authentication and token management, pagination and
+network-related error handling/retries.
+
+This module is built and tested on Python 3.6 but should work on Python 2.7 and up.
+
+
+## Install
+```commandline
+pip install directaccess
+```
+
+## Usage
+
+### Direct Access Version 1 (deprecated)
+Version 1 of the API has been deprecated and removed.
+
+### Direct Access Version 2
+For version 2 of the API, create an instance of the DirectAccessV2 class, providing it your API key, client id and client secret.
+The returned access token will be available as an attribute on the instance (d2.access_token) and the Authorization
+header is set automatically
+```python
+from directaccess import DirectAccessV2
+
+d2 = DirectAccessV2(
+ api_key='<your-api-key>',
+ client_id='<your-client-id>',
+ client_secret='<your-client-secret>',
+)
+```
+
+Provide the query method the dataset and query params. All query parameters must match the valid
+parameters found in the Direct Access documentation and be passed as keyword arguments.
+```python
+for row in d2.query('well-origins', county='REEVES', pagesize=10000):
+ print(row)
+```
+
+### Filter functions
+Direct Access version 2 supports filter funtions. These can be passed as strings on the keyword arguments.
+
+Some common filters are greater than (`gt()`), less than (`lt()`), null, not null (`not(null)`) and between (`btw()`).
+See the Direct Access documentation for a list of all available filters.
+
+```python
+# Get well records updated after 2018-08-01 and without deleted dates
+for row in d2.query('well-origins', updateddate='gt(2018-08-01)', deleteddate='null'):
+ print(row)
+
+# Get permit records with approved dates between 2018-03-01 and 2018-06-01
+for row in d2.query('permits', approveddate='btw(2018-03-01,2018-06-01)'):
+ print(row)
+```
+
+You can use the `fields` keyword to limit the returned fields in your request.
+```python
+for row in d2.query('rigs', fields='DrillType,LeaseName,PermitDepth'):
+ print(row)
+
+```
+
+### Escaping
+When making requests containing certain characters like commas, use a backslash to escape them.
+```python
+# Escaping the comma before LLC
+for row in d2.query('producing-entities', curropername='PERCUSSION PETROLEUM OPERATING\, LLC'):
+ print(row)
+
+```
+
+### Network request handling
+This module exposes functionality in python-requests for modifying network requests handling, namely:
+* retries and backoff
+* network proxies
+* ssl verification
+
+#### Retries and backoff
+Specify the number of retry attempts in `retries` and the backoff factor in `backoff_factor`. See the urllib3
+[Retry](https://urllib3.readthedocs.io/en/latest/reference/urllib3.util.html#urllib3.util.Retry) utility API for more info
+```python
+from directaccess import DirectAccessV2
+
+d2 = DirectAccessV2(
+ api_key='<your-api-key>',
+ client_id='<your-client-id>',
+ client_secret='<your-client-secret>',
+ retries=5,
+ backoff_factor=1
+)
+```
+
+You can specify a network proxy by passing a dictionary with the host and port of your proxy to `proxies`. See the
+[proxies](https://requests.readthedocs.io/en/master/user/advanced/#proxies) section of the python-requests documentation
+for more info.
+```python
+from directaccess import DirectAccessV2
+
+d2 = DirectAccessV2(
+ api_key='<your-api-key>',
+ client_id='<your-client-id>',
+ client_secret='<your-client-secret>',
+ proxies={'https': 'http://10.10.1.10:1080'}
+)
+```
+
+Finally, if you're in an environment that provides its own SSL certificates that might not be in your trusted store,
+you can choose to ignore SSL verification altogether. This is typically not a good idea and you should seek to resolve
+certificate errors instead of ignore them.
+```python
+from directaccess import DirectAccessV2
+
+d2 = DirectAccessV2(
+ api_key='<your-api-key>',
+ client_id='<your-client-id>',
+ client_secret='<your-client-secret>',
+ verify=False
+)
+```
+
+
+
+
+%prep
+%autosetup -n directaccess-1.5.2
+
+%build
+%py3_build
+
+%install
+%py3_install
+install -d -m755 %{buildroot}/%{_pkgdocdir}
+if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
+if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
+if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
+if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
+pushd %{buildroot}
+if [ -d usr/lib ]; then
+ find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/lib64 ]; then
+ find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/bin ]; then
+ find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/sbin ]; then
+ find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+touch doclist.lst
+if [ -d usr/share/man ]; then
+ find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
+fi
+popd
+mv %{buildroot}/filelist.lst .
+mv %{buildroot}/doclist.lst .
+
+%files -n python3-directaccess -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Mon May 15 2023 Python_Bot <Python_Bot@openeuler.org> - 1.5.2-1
+- Package Spec generated