# youtube_selenium_py
[![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://opensource.org/licenses/MIT) [![Python Version](https://img.shields.io/badge/python-3.6%2B-blue.svg)](https://www.python.org/downloads/) [![PyPI Version](https://img.shields.io/pypi/v/youtube_selenium_py.svg)](https://discord.gg/hBufFtWQmy) ![Discord](https://img.shields.io/discord/1225776155626307594)
**youtube_selenium_py** is a Python package that simplifies interactions with YouTube using Selenium.
(Video iframe, title: "Youtube Selenium Py | Automate Youtube with Selenium and Python)
---
## Table of Contents
1. [Introduction](#introduction)
2. [Installation](#installation)
3. [Usage](#usage)
4. [Features](#features)
5. [Examples](#examples)
6. [Documentation](#documentation)
7. [Contributing](#contributing)
8. [License](#license)
---
## Introduction
This package provides functionalities to perform various actions on YouTube, such as creating channels, uploading videos, managing community posts, retrieving channel statistics, and more. It mostly uses Selenium to automate interactions with the YouTube platform. The package has two main classes at this moment, the `Youtube` class, and the `YoutubeData` class. The `Youtube` class is used for creating and getting information for the specific YouTube channel that is signed in, and the `YoutubeData` class is used to get some basic information from a YouTube channel and YouTube videos.
---
## Installation
1. **Install package via pip:**
```bash
pip install youtube_selenium_py
```
2. **Upgrade setuptools (required for undetected chromedriver to work):**
```bash
pip install --upgrade setuptools
```
3. **Make sure you have Chromium browser installed on your operating system:**
### Windows:
- [Download Chromium](https://www.chromium.org/getting-involved/download-chromium/)
### macOS:
```bash
brew install chromium
```
### Linux:
#### Debian/Ubuntu-based:
```bash
sudo apt update
sudo apt install chromium-browser
```
#### Arch Linux:
```bash
sudo pacman -S chromium
```
---
## Usage
After installation, import the package and utilize its classes and methods. Detailed usage instructions and examples are provided in the [documentation](https://docs.agnostica.site).
Here is a quick video I recorded, of me going through the source code of the package, explaining each method, and also testing out the package:
(youtube video href)
---
## Features
- Create and edit YouTube channels
- Upload videos to channels
- Manage community posts
- Retrieve channel and video statistics
- Delete channels and sub-channels
- Download videos and thumbnails
- And more (read documentation)
---
## Examples
```python
from youtube_selenium_py.classes import Youtube
# Initialize the Youtube object
yt = Youtube(email="your_email@example.com", password="your_password")
# There is a 20 second implicit sleep after signing in, because maybe you have 2 step authentication enabled, or it will send confirmation code to your phone. We suggest using a brand new google account, then this won't happen, everything will be automatic.
# Example: Create a channel
channel_creation_result = yt.create_channel()
print(channel_creation_result)
# Example: Upload a video
video_upload_result = yt.create_video(
absolute_video_path="/path/to/video.mp4",
video_title="My Video Title",
video_description="Description of my video"
)
print(video_upload_result)
# Close the driver when done
yt.close()
```
---
## Documentation
Refer to the provided <a href="https://docs.agnostica.site">documentation</a> for detailed usage instructions, method descriptions, and return formats.
---
## Contributing
Contributions are welcome! Please follow the guidelines outlined in the [CONTRIBUTING.md](CONTRIBUTING.md) file.
---
## License
This project is licensed under the [MIT License](LICENSE).
Raw data
{
"_id": null,
"home_page": "https://github.com/Automa-Automations/youtube_selenium_py",
"name": "youtube-selenium-py",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": "youtube, API, video, channel, upload, statistics, python, development, selenium",
"author": "William Ferns",
"author_email": "business@agnostica.site",
"download_url": "https://files.pythonhosted.org/packages/a2/28/2a8d84d37d93afcc367f219adc7e4f094148678620d41a36510d5f1a48f2/youtube_selenium_py-1.0.9.tar.gz",
"platform": null,
"description": "# youtube_selenium_py\n\n[![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://opensource.org/licenses/MIT) [![Python Version](https://img.shields.io/badge/python-3.6%2B-blue.svg)](https://www.python.org/downloads/) [![PyPI Version](https://img.shields.io/pypi/v/youtube_selenium_py.svg)](https://discord.gg/hBufFtWQmy) ![Discord](https://img.shields.io/discord/1225776155626307594)\n\n**youtube_selenium_py** is a Python package that simplifies interactions with YouTube using Selenium.\n\n(Video iframe, title: \"Youtube Selenium Py | Automate Youtube with Selenium and Python)\n\n---\n\n## Table of Contents\n\n1. [Introduction](#introduction)\n2. [Installation](#installation)\n3. [Usage](#usage)\n4. [Features](#features)\n5. [Examples](#examples)\n6. [Documentation](#documentation)\n7. [Contributing](#contributing)\n8. [License](#license)\n\n---\n\n## Introduction\n\nThis package provides functionalities to perform various actions on YouTube, such as creating channels, uploading videos, managing community posts, retrieving channel statistics, and more. It mostly uses Selenium to automate interactions with the YouTube platform. The package has two main classes at this moment, the `Youtube` class, and the `YoutubeData` class. The `Youtube` class is used for creating and getting information for the specific YouTube channel that is signed in, and the `YoutubeData` class is used to get some basic information from a YouTube channel and YouTube videos.\n\n---\n\n## Installation\n\n1. **Install package via pip:**\n\n ```bash\n pip install youtube_selenium_py\n ```\n\n2. **Upgrade setuptools (required for undetected chromedriver to work):**\n\n ```bash\n pip install --upgrade setuptools\n ```\n\n3. **Make sure you have Chromium browser installed on your operating system:**\n\n ### Windows:\n\n - [Download Chromium](https://www.chromium.org/getting-involved/download-chromium/)\n\n ### macOS:\n\n ```bash\n brew install chromium\n ```\n\n ### Linux:\n\n #### Debian/Ubuntu-based:\n\n ```bash\n sudo apt update\n sudo apt install chromium-browser\n ```\n\n #### Arch Linux:\n\n ```bash\n sudo pacman -S chromium\n ```\n\n---\n\n## Usage\n\nAfter installation, import the package and utilize its classes and methods. Detailed usage instructions and examples are provided in the [documentation](https://docs.agnostica.site).\n\nHere is a quick video I recorded, of me going through the source code of the package, explaining each method, and also testing out the package:\n\n(youtube video href)\n\n---\n\n## Features\n\n- Create and edit YouTube channels\n- Upload videos to channels\n- Manage community posts\n- Retrieve channel and video statistics\n- Delete channels and sub-channels\n- Download videos and thumbnails\n- And more (read documentation)\n\n---\n\n## Examples\n\n```python\nfrom youtube_selenium_py.classes import Youtube\n\n# Initialize the Youtube object\nyt = Youtube(email=\"your_email@example.com\", password=\"your_password\")\n\n# There is a 20 second implicit sleep after signing in, because maybe you have 2 step authentication enabled, or it will send confirmation code to your phone. We suggest using a brand new google account, then this won't happen, everything will be automatic.\n\n# Example: Create a channel\nchannel_creation_result = yt.create_channel()\nprint(channel_creation_result)\n\n# Example: Upload a video\nvideo_upload_result = yt.create_video(\n absolute_video_path=\"/path/to/video.mp4\",\n video_title=\"My Video Title\",\n video_description=\"Description of my video\"\n)\nprint(video_upload_result)\n\n# Close the driver when done\nyt.close()\n```\n\n---\n\n## Documentation\n\nRefer to the provided <a href=\"https://docs.agnostica.site\">documentation</a> for detailed usage instructions, method descriptions, and return formats.\n\n---\n\n## Contributing\n\nContributions are welcome! Please follow the guidelines outlined in the [CONTRIBUTING.md](CONTRIBUTING.md) file.\n\n---\n\n## License\n\nThis project is licensed under the [MIT License](LICENSE).\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "A Python package to create youtube channels, sub channels, upload videos, create community posts, edit channel, delete channel, and so much more.",
"version": "1.0.9",
"project_urls": {
"Automa Automations": "https://github.com/Automa-Automations",
"Bug Reports": "https://github.com/Automa-Automations/youtube_selenium_py/issues",
"Homepage": "https://github.com/Automa-Automations/youtube_selenium_py",
"Source": "https://github.com/Automa-Automations/youtube_selenium_py"
},
"split_keywords": [
"youtube",
" api",
" video",
" channel",
" upload",
" statistics",
" python",
" development",
" selenium"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "b22016790a0b542f556f4bf2fbffc51d37206d9304c58610a2e0a054e05d4c3a",
"md5": "bcb25ca08e6a103825e5ba1651a4b5da",
"sha256": "ea11ad1d57858126f03a16e72aafa5068dfd05daf7ba18649945e63667515813"
},
"downloads": -1,
"filename": "youtube_selenium_py-1.0.9-py3-none-any.whl",
"has_sig": false,
"md5_digest": "bcb25ca08e6a103825e5ba1651a4b5da",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 42211,
"upload_time": "2024-04-07T01:31:20",
"upload_time_iso_8601": "2024-04-07T01:31:20.584534Z",
"url": "https://files.pythonhosted.org/packages/b2/20/16790a0b542f556f4bf2fbffc51d37206d9304c58610a2e0a054e05d4c3a/youtube_selenium_py-1.0.9-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "a2282a8d84d37d93afcc367f219adc7e4f094148678620d41a36510d5f1a48f2",
"md5": "0af00656ce630d092ee73e21d3188550",
"sha256": "d2dfe2036ce67522d576507f9c0d721087473e418e7d24a7f3709021b6c7ec43"
},
"downloads": -1,
"filename": "youtube_selenium_py-1.0.9.tar.gz",
"has_sig": false,
"md5_digest": "0af00656ce630d092ee73e21d3188550",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 25317,
"upload_time": "2024-04-07T01:31:22",
"upload_time_iso_8601": "2024-04-07T01:31:22.836522Z",
"url": "https://files.pythonhosted.org/packages/a2/28/2a8d84d37d93afcc367f219adc7e4f094148678620d41a36510d5f1a48f2/youtube_selenium_py-1.0.9.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-04-07 01:31:22",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "Automa-Automations",
"github_project": "youtube_selenium_py",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [],
"lcname": "youtube-selenium-py"
}