{ "info": { "author": "AlexAplin", "author_email": "", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Natural Language :: English", "Programming Language :: Python", "Programming Language :: Python :: 3" ], "description": "# nndownload\n\n![PyPI](https://img.shields.io/pypi/v/nndownload.svg)\n\nnndownload allows you to process videos and other links from [Niconico](http://nicovideo.jp), formerly known as Nico Nico Douga. It simulates the HTML5 player by performing a session request to get the HQ source. Where not available, it will fallback to the Flash player. Keep in mind that if your account doesn't have premium, it may download the LQ source during economy mode hours (12 PM - 2 AM JST). When not providing a login, some Flash videos will not be available for download or will only be available in a lower quality.\n\n## Features\n - Download videos with comments, thumbnails, and metadata\n - Download Nico Seiga images and manga\n - Download a user's videos\n - Download mylists\n - Download videos faster using multiple threads\n - Generate stream URLs for Niconama broadcasts\n - Process text files with URLs\n\n## Requirements\n### Python version\n- Python >=3.6\n\n### Dependencies\n- beautifulsoup4\n- requests\n- websockets\n\n# Installation\n```bash\npip install nndownload\n```\n\n## Usage\n### Standalone\n```\nusage: nndownload.py [options] input\n\npositional arguments:\n input URL or file\n\noptional arguments:\n -h, --help show this help message and exit\n -u USERNAME, --username USERNAME\n account username\n -p PASSWORD, --password PASSWORD\n account password\n -n, --netrc use .netrc authentication\n -q, --quiet suppress output to console\n -l, --log log output to file\n -v, --version show program's version number and exit\n\ndownload options:\n -y PROXY, --proxy PROXY\n http or socks proxy\n -o TEMPLATE, --output-path TEMPLATE\n custom output path (see template options)\n -r N, --threads N\n download using a specified number of multithreads\n -g, --no-login create a download session without logging in\n -f, --force-high-quality\n only download if the high quality source is available\n -m, --dump-metadata dump video metadata to file\n -t, --download-thumbnail\n download video thumbnail\n -c, --download-comments\n download video comments\n -e, --english request video on english site\n -aq AUDIO_QUALITY, --audio-quality AUDIO_QUALITY\n specify audio quality (DMC videos only)\n -vq VIDEO_QUALITY, --video-quality VIDEO_QUALITY\n specify video quality (DMC videos only)\n```\n\n### Module\n```python\nimport nndownload\n\nurl = \"https://www.nicovideo.jp/watch/sm35249846\"\noutput_path = \"/tmp/{id}.{ext}\"\nnndownload.execute(\"-g\", \"-o\", output_path, url)\n```\n\n### Custom Output Paths\nCustom filepaths are constructed like standard Python template strings, e.g. `{uploader} - {title}.{ext}`. For Nico Seiga manga and comics, the output path should be the template for a chapter directory, e.g. `{manga_id}\\{id} - {title}`. The available options are:\n\n- comment_count\n- description\n- duration\n- ext\n- id\n- mylist_count\n- published\n- quality\n- size_high\n- size_low\n- thread_id\n- thumbnail_url\n- title\n- uploader\n- uploader_id\n- url\n- view_count\n- audio_quality (DMC)\n- video_quality (DMC)\n- manga_id (Seiga)\n- manga_title (Seiga)\n- page_count (Seiga)\n- clip_count (Seiga)\n\n### Using Stream Links\nAfter generating a stream URL, the program must be kept running to keep the stream active. [mpv](https://github.com/mpv-player/mpv) and [streamlink](https://github.com/streamlink/streamlink) are the best options for playing generated stream URLs. Other programs that use aggressive HLS caching and threading may also work.\n\nFor mpv:\n\n`mpv https://...`\n\nFor streamlink, replace `https` with `hls` in the output stream URL:\n\n`streamlink \"hls://...\" best`\n\n## Known Bugs\n- Check open issues.\n\n## License\nThis project is licensed under the MIT License.", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/AlexAplin/nndownload", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "nndownload", "package_url": "https://pypi.org/project/nndownload/", "platform": "", "project_url": "https://pypi.org/project/nndownload/", "project_urls": { "Homepage": "https://github.com/AlexAplin/nndownload" }, "release_url": "https://pypi.org/project/nndownload/1.3/", "requires_dist": null, "requires_python": ">=3.6", "summary": "nndownload allows you to process videos and other links from Niconico.", "version": "1.3" }, "last_serial": 5950758, "releases": { "0.9": [ { "comment_text": "", "digests": { "md5": "fbbabafd126e5454e22b0547bb7c0ade", "sha256": "6a09aba94b3adfe15c829f17bf9113b4c14d6f06718466a2d841019779dfa99f" }, "downloads": -1, "filename": "nndownload-0.9-py3-none-any.whl", "has_sig": false, "md5_digest": "fbbabafd126e5454e22b0547bb7c0ade", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 12739, "upload_time": "2019-07-08T05:33:42", "url": "https://files.pythonhosted.org/packages/4e/4c/d992793455553adb86adf740dbf79505e4a3e098ebfb743d5f15898a1a84/nndownload-0.9-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "94315005880a6dc6a0b4fd295dd3754d", "sha256": "400e53c4155c0e326b809ccad61b4d354672b39870f7e2290ca7df75d6e70d41" }, "downloads": -1, "filename": "nndownload-0.9.tar.gz", "has_sig": false, "md5_digest": "94315005880a6dc6a0b4fd295dd3754d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14211, "upload_time": "2019-07-08T05:33:45", "url": "https://files.pythonhosted.org/packages/b4/26/c89b3eb7021c590e75f2bdadfe6f73f990e1aae44e0a2d320b85b5408c63/nndownload-0.9.tar.gz" } ], "1.1": [ { "comment_text": "", "digests": { "md5": "356ceed10769b7ad2843a37e1da7d4ac", "sha256": "9db8c5dd18bda4d2b4dd6a1ddff2a2f074144c932665f9de94f341b13cac26cd" }, "downloads": -1, "filename": "nndownload-1.1.tar.gz", "has_sig": false, "md5_digest": "356ceed10769b7ad2843a37e1da7d4ac", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 14460, "upload_time": "2019-07-15T20:45:39", "url": "https://files.pythonhosted.org/packages/4e/c0/4df3a1cb3d23c2c6d7243c1b4730cc1800f0f4d523e410bbce02dbe415f2/nndownload-1.1.tar.gz" } ], "1.2": [ { "comment_text": "", "digests": { "md5": "c2bdcbf4ea172703fc98c60f8a8e207a", "sha256": "4ac5adec19260b76a894aeecaa472440c3f2df6ad5bf6b0d6ef215ed41ae50a2" }, "downloads": -1, "filename": "nndownload-1.2.tar.gz", "has_sig": false, "md5_digest": "c2bdcbf4ea172703fc98c60f8a8e207a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 15805, "upload_time": "2019-08-29T03:54:22", "url": "https://files.pythonhosted.org/packages/b9/02/2e0e2b7eb6cfefab4c6fe3976e86822e51e9bc29faf5784d03dcee5c7719/nndownload-1.2.tar.gz" } ], "1.3": [ { "comment_text": "", "digests": { "md5": "5b3669675e656e5f976c2f516bec8612", "sha256": "df87458f984fd048ba49794d296bb14d002f25b3f52f436a2cb488ddf0d139b3" }, "downloads": -1, "filename": "nndownload-1.3.tar.gz", "has_sig": false, "md5_digest": "5b3669675e656e5f976c2f516bec8612", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 17554, "upload_time": "2019-10-09T16:16:08", "url": "https://files.pythonhosted.org/packages/f2/80/3bcfbb7054b2013f7f38d89f4dabff8d240796a16f71fc2253c4fd76c588/nndownload-1.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "5b3669675e656e5f976c2f516bec8612", "sha256": "df87458f984fd048ba49794d296bb14d002f25b3f52f436a2cb488ddf0d139b3" }, "downloads": -1, "filename": "nndownload-1.3.tar.gz", "has_sig": false, "md5_digest": "5b3669675e656e5f976c2f516bec8612", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 17554, "upload_time": "2019-10-09T16:16:08", "url": "https://files.pythonhosted.org/packages/f2/80/3bcfbb7054b2013f7f38d89f4dabff8d240796a16f71fc2253c4fd76c588/nndownload-1.3.tar.gz" } ] }