Command-line tool with methods to consume the AltDG API in bulk.
© Alternative Data Group. All rights reserved.
Python 3.6+
See also requirements.txt
Run the following commands in your shell:
# install as usual python package
pip install altdg
# ... or install "altdg" package directly from repo
pip install git+https://github.com/altdg/bulk_mapper.git
# ... or if you want to get samples for testing, clone the repo
git clone https://github.com/altdg/bulk_mapper.git altdg
pip install -e altdg
Now everything is ready to run the tool.
To use this tool you must have a valid app key to the AltDG API. Methods are available depending on you account type with AltDG.
Use this key to try the API for free: f816b9125492069f7f2e3b1cc60659f0
Sign up at https://developer.altdg.com/ to get a non-trial key.
A preferred way to run the tool is to load it as module with the python
command.
Run the tool with --help
flag to display command's usage:
altdg --help
Maps domain names from given text to structured company information.
More details in https://developer.altdg.com/docs#domain-mapper
This will run all the domains in the provided text file (one per line expected):
altdg -e domain-mapper sample-domains.txt -k "f816b9125492069f7f2e3b1cc60659f0"
Sign up at https://developer.altdg.com/ to get a non-trial key.
A CSV output file will be created automatically with the same path as the input file but prepending the current date.
sample-domains.txt is a sample list of domains we included in our repo. This file is downloaded as part of this package, no need to re-create it.
Maps strings from transactional purchase text (e.g. credit card transactions) to structured company information.
More details in https://developer.altdg.com/docs#merchant-mapper
altdg -e merchant-mapper sample-merchants.txt -k "f816b9125492069f7f2e3b1cc60659f0"
Sign up at https://developer.altdg.com/ to get a non-trial key.
A CSV output file will be created automatically with the same path as the input file but prepending the current date.
sample-merchants.txt is a sample list of domains we included in our repo. This file is downloaded as part of this package, no need to re-create it.
Maps strings from product related text (e.g. inventory) to structured company information.
More details in https://developer.altdg.com/docs#product-mapper
altdg -e product-mapper sample-products.txt -k "f816b9125492069f7f2e3b1cc60659f0"
Sign up at https://developer.altdg.com/ to get a non-trial key.
A CSV output file will be created automatically with the same path as the input file but prepending the current date.
Arguments:
-e <endpoint>
--endpoint
Type of mapper. Choices are "merchant-mapper", "domain-mapper" and "product-mapper".-k <key>
--key
AltDG API application key.-o <filename>
--out
Output file path. If not provided, the input file name is used with the ".csv" extension, prepended with the date and time.-F
--force
When providing a specific out_file, some results may already exist in that file for an input. Use this option to force re-process results that are already in that output file, otherwise existing results won't be processed again. Previous results are NOT overwritten, a new CSV row is added.-n
--num-threads
Number of requests to process in parallel. (See--help
for max and default)-r
--num-retires
Number of retries per request. (See--help
for max and default)-t
--timeout
API request timeout (in seconds). (See--help
for max and default)-th <hint>
--type-hint
Improves the accuracy by providing the industry name or any keyword hint relevant to the inputs. E.g.-th "medical"
You may use AltdgAPI
class from your python program:
from altdg.api import AltdgAPI
# initialize Mapper class with your key
mapper = AltdgAPI('domain-mapper', api_key='f816b9125492069f7f2e3b1cc60659f0')
# single query
print(mapper.query('abc.com'))
# single query with hint
print(mapper.query('abc.com', hint='news'))
# bulk query
print(mapper.bulk_query(['yahoo.com', 'amazon.com']))
# bulk query with same hint for all inputs
print(mapper.bulk_query(['yahoo.com', 'amazon.com'], hint='company'))
# bulk query with overwriting hint
print(mapper.bulk_query([
('purple mint', 'restaurant'), # (input, hint) tuple
'amazon', # just input with base hint
], hint='company')) # base hint
Please email info@altdg.com if you need to contact us directly.