# vids-db
File based database to store video information.
This database provides efficient searches for a variaty of differerent common search patterns, like all videos in a channel, or all videos for everyone in the last 4 hours.
For a front end to this database, please see `vids-db-server`
## Platform Unit Tests
[![Actions Status](https://github.com/zackees/vids-db/workflows/MacOS_Tests/badge.svg)](https://github.com/zackees/vids-db/actions/workflows/test_macos.yml)
[![Actions Status](https://github.com/zackees/vids-db/workflows/Win_Tests/badge.svg)](https://github.com/zackees/vids-db/actions/workflows/test_win.yml)
[![Actions Status](https://github.com/zackees/vids-db/workflows/Ubuntu_Tests/badge.svg)](https://github.com/zackees/vids-db/actions/workflows/test_ubuntu.yml)
[![Actions Status](https://github.com/zackees/vids-db/workflows/Pypi_Publish/badge.svg)](https://github.com/zackees/vids-db/actions/workflows/pypi-publish.yml)
# Api
```
from vids_db import Database, Video
db = vids_db.Database("path/to/database")
vid = Video(...)
db.update(vid)
vids = db.get_video_list(date_start=date_start, date_end=date_end)
print(vids)
```
# Full Tests + linting
* `git clone https://github.com/zackees/vids-db`
* `cd vids_db`
* `tox`
# Networking Requests
* Please see `Video.parse_json(...)` for generating a type safe input json that can
be used to insert videos into the database. See also vids-db-server.
# Version
* 1.2.3: Fix duration parsing.
* 1.2.2: Fix indexes.
* 1.2.1: nit.
* 1.2.0: Fixes index. Old databases are abandonded after this update.
* 1.1.6: Adds migration on startup to fix niave datestamps.
* 1.1.5: Timezone niave datestamps are now rejected
* 1.1.4: bulk get_by_url
* 1.1.3: Adds remove by channel name, to allow deletion
* 1.1.1: Implements get_channel_names() to find all distinct channel names
* 1.1.0: vids-db now has full text search disabled by default (too processor intensive)
* 1.0.9: parse_json now can take in a dict
* 1.0.8: Adds parse_json
* 1.0.7: Relaxes views
* 1.0.6: Relaxes channel name to allow "NTD"
* 1.0.5: Fixes issue where datestamp was too strict
Raw data
{
"_id": null,
"home_page": "https://github.com/zackees/vids-db",
"name": "vids-db",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.6.0",
"maintainer_email": null,
"keywords": null,
"author": "Zach Vorhies",
"author_email": "dont@email.me",
"download_url": "https://files.pythonhosted.org/packages/b4/4d/fc6d636a96f2de553868777c24dc1a72d00732fbb3314e4dc73c8ef90951/vids_db-1.2.5.tar.gz",
"platform": null,
"description": "# vids-db\n\nFile based database to store video information.\n\nThis database provides efficient searches for a variaty of differerent common search patterns, like all videos in a channel, or all videos for everyone in the last 4 hours.\n\nFor a front end to this database, please see `vids-db-server`\n\n## Platform Unit Tests\n\n[![Actions Status](https://github.com/zackees/vids-db/workflows/MacOS_Tests/badge.svg)](https://github.com/zackees/vids-db/actions/workflows/test_macos.yml)\n[![Actions Status](https://github.com/zackees/vids-db/workflows/Win_Tests/badge.svg)](https://github.com/zackees/vids-db/actions/workflows/test_win.yml)\n[![Actions Status](https://github.com/zackees/vids-db/workflows/Ubuntu_Tests/badge.svg)](https://github.com/zackees/vids-db/actions/workflows/test_ubuntu.yml)\n[![Actions Status](https://github.com/zackees/vids-db/workflows/Pypi_Publish/badge.svg)](https://github.com/zackees/vids-db/actions/workflows/pypi-publish.yml)\n\n\n# Api\n\n```\nfrom vids_db import Database, Video\ndb = vids_db.Database(\"path/to/database\")\nvid = Video(...)\ndb.update(vid)\nvids = db.get_video_list(date_start=date_start, date_end=date_end)\nprint(vids)\n```\n\n# Full Tests + linting\n\n * `git clone https://github.com/zackees/vids-db`\n * `cd vids_db`\n * `tox`\n\n# Networking Requests\n\n * Please see `Video.parse_json(...)` for generating a type safe input json that can\n be used to insert videos into the database. See also vids-db-server.\n\n# Version\n\n * 1.2.3: Fix duration parsing.\n * 1.2.2: Fix indexes.\n * 1.2.1: nit.\n * 1.2.0: Fixes index. Old databases are abandonded after this update.\n * 1.1.6: Adds migration on startup to fix niave datestamps.\n * 1.1.5: Timezone niave datestamps are now rejected\n * 1.1.4: bulk get_by_url\n * 1.1.3: Adds remove by channel name, to allow deletion\n * 1.1.1: Implements get_channel_names() to find all distinct channel names\n * 1.1.0: vids-db now has full text search disabled by default (too processor intensive)\n * 1.0.9: parse_json now can take in a dict\n * 1.0.8: Adds parse_json\n * 1.0.7: Relaxes views\n * 1.0.6: Relaxes channel name to allow \"NTD\"\n * 1.0.5: Fixes issue where datestamp was too strict\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Server running vids_db",
"version": "1.2.5",
"project_urls": {
"Homepage": "https://github.com/zackees/vids-db"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "d13dfce8472a2d05c507abeca10554684d5eebd1a67c9d0bef16b1367895aa66",
"md5": "ddbc5df87199201afaa85a05cded44e2",
"sha256": "5e7afa64538f42b3ef60b438a41fbe36eca6e50f9a843d6ed228a7bb7bc04e7c"
},
"downloads": -1,
"filename": "vids_db-1.2.5-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "ddbc5df87199201afaa85a05cded44e2",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": ">=3.6.0",
"size": 9957,
"upload_time": "2024-08-27T05:47:41",
"upload_time_iso_8601": "2024-08-27T05:47:41.900353Z",
"url": "https://files.pythonhosted.org/packages/d1/3d/fce8472a2d05c507abeca10554684d5eebd1a67c9d0bef16b1367895aa66/vids_db-1.2.5-py2.py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "dc47c85b0f63a25455a36dbad45668fb099fd06ae7ab9cf2c4c4f306041ade44",
"md5": "2e1103137e05452717bd360cb3cbfdb8",
"sha256": "6a8ad1d20b06e217ed537200597ce5cfecc6fb8daa4c3d625ce8311035fc3f7c"
},
"downloads": -1,
"filename": "vids_db-1.2.5-py3-none-any.whl",
"has_sig": false,
"md5_digest": "2e1103137e05452717bd360cb3cbfdb8",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6.0",
"size": 9914,
"upload_time": "2024-08-27T05:46:54",
"upload_time_iso_8601": "2024-08-27T05:46:54.650481Z",
"url": "https://files.pythonhosted.org/packages/dc/47/c85b0f63a25455a36dbad45668fb099fd06ae7ab9cf2c4c4f306041ade44/vids_db-1.2.5-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "b44dfc6d636a96f2de553868777c24dc1a72d00732fbb3314e4dc73c8ef90951",
"md5": "092727917b8cbcb45800482f09ec4a63",
"sha256": "65d3e6961ec6c472f0869117d4763bed707b34334cd7bb0614249702a651202c"
},
"downloads": -1,
"filename": "vids_db-1.2.5.tar.gz",
"has_sig": false,
"md5_digest": "092727917b8cbcb45800482f09ec4a63",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6.0",
"size": 14172,
"upload_time": "2024-08-27T05:46:56",
"upload_time_iso_8601": "2024-08-27T05:46:56.434808Z",
"url": "https://files.pythonhosted.org/packages/b4/4d/fc6d636a96f2de553868777c24dc1a72d00732fbb3314e4dc73c8ef90951/vids_db-1.2.5.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-08-27 05:46:56",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "zackees",
"github_project": "vids-db",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "types-python-dateutil",
"specs": []
},
{
"name": "python-dateutil",
"specs": []
},
{
"name": "pydantic",
"specs": []
},
{
"name": "Whoosh",
"specs": []
},
{
"name": "pytz",
"specs": []
},
{
"name": "types-pytz",
"specs": []
}
],
"tox": true,
"lcname": "vids-db"
}