Open NickleDave opened 2 years ago
That all sounds good to me - haven't found time to give it any thought or get started with the lower-level stuff yet. I just came across this, I haven't looked at it yet but will leave for future reference:
That all sounds good to me - haven't found time to give it any thought or get started with the lower-level stuff yet. I just came across this, I haven't looked at it yet but will leave for future reference:
* [scikit-maad](https://github.com/scikit-maad/scikit-maad) // xeno-canto [example](https://scikit-maad.github.io/_auto_examples/2_advanced/plot_xenocanto_wookpecker_activities.html#sphx-glr-auto-examples-2-advanced-plot-xenocanto-wookpecker-activities-py), [source code](https://github.com/scikit-maad/scikit-maad/blob/production/maad/util/xeno_canto.py)
Glad we agree :slightly_smiling_face: -- I did link to that library above but I know I put a lot in the issue. I hadn't seen the docs though, that's helpful
Yes vignettes like their metadata example are I think exactly what we'd want
following up on #1
@nilomr please do comment if I am not capturing your input well
low-level clean-up stuff
xenacanto.py
into modules?cli
into a module, esp. if we plan to modify / extend laterdownload
function intodownload
module (which gives us the classic Pythondownload.download
:joy:tqdmm
functiontqdm
package but I would suggest a verb likeget_pbar
or something?rich
for progress bar, likepip
?pip
toolbarlonger-term higher-level re-factoring
each of these can definitely end up being separate issues, but collecting them here. Roughly in order of complexity, from least to most
[ ] need a simple docs page -- probably a one-pager?
[ ] represent queries as a
dataclass
? (orattrs
orfastapi
)[ ] make sure we study stuff that exists in other packages to understand use cases better
scikit-maad
module: https://github.com/scikit-maad/scikit-maad/blob/production/maad/util/xeno_canto.py (looks like it was adapted from earlier script according to comments?)scikit-maad
docstrings actually look informative; I would do function naming differently thoughscikit-maad
adapts in part from: https://github.com/davipatti/birdbrain/blob/master/bin/search_xeno_canto.py -- some of this is for v1.0 of xeno-canto API though I think? (e.g. "can't specify species")[ ] what would a good cli look like?
should there be different commands?
[ ] should we have a class with methods that map directly to API calls?
[ ] are there specific queries people want that we could provide?