Metadata-Version: 2.1
Name: youtube-search-python
Version: 1.3.3
Summary: Search for YouTube videos WITHOUT YouTube Data API v3
Home-page: https://github.com/alexmercerind/youtube-search-python
Author: Hitesh Kumar Saini
Author-email: saini123hitesh@gmail.com
License: UNKNOWN
Description: # [youtube-search-python](https://github.com/alexmercerind/youtube-search-python)
        
        #### Search for videos, channels & playlists in YouTube WITHOUT YouTube Data API v3.
        
        [![PyPI - Version](https://img.shields.io/pypi/v/youtube-search-python?style=for-the-badge)](https://pypi.org/project/youtube-search-python)
        [![PyPI - Downloads](https://img.shields.io/pypi/dm/youtube-search-python?label=DOWNLOADS&style=for-the-badge)](https://pypi.org/project/youtube-search-python)
        
        Works without YouTube Data API v3 and has zero dependencies.
        
        This library is intended for personal and non-commercial usage only.
        
        Working as of 2020.
        
        
        ## Install
        
        ```bash
        pip install youtube-search-python
        ```
        
        ## Usage
        
        ##### Search for everything
        
        ```python
        from youtubesearchpython import Search
        
        allSearch = Search('NoCopyrightSounds', limit = 1)
        
        print(allSearch.result())
        ```
        
        <details>
         <summary> Example Result</summary>
        
        ```json
        {
            "result": [
                {
                    "type": "channel",
                    "id": "UC_aEa8K-EOJ3D6gOs7HcyNg",
                    "title": "NoCopyrightSounds",
                    "thumbnails": [
                        {
                            "url": "//yt3.ggpht.com/ytc/AAUvwngbenDpBxHNZlecDGyccHeVyQB22dPZnPuhbW8LHw=s88-c-k-c0x00ffffff-no-rj-mo",
                            "width": 88,
                            "height": 88
                        },
                        {
                            "url": "//yt3.ggpht.com/ytc/AAUvwngbenDpBxHNZlecDGyccHeVyQB22dPZnPuhbW8LHw=s176-c-k-c0x00ffffff-no-rj-mo",
                            "width": 176,
                            "height": 176
                        }
                    ],
                    "videoCount": "850",
                    "descriptionSnippet": [
                        {
                            "text": "NoCopyrightSounds",
                            "bold": true
                        },
                        {
                            "text": " is a copyright free / stream safe record label, providing free to use music to the content creator community."
                        }
                    ],
                    "subscribers": "28.7M subscribers",
                    "link": "https://www.youtube.com/channel/UC_aEa8K-EOJ3D6gOs7HcyNg"
                },
            ]
        }
        ```
        
        </details>
        
        ##### Search for only videos
        
        ```python
        from youtubesearchpython import VideosSearch
        
        videosSearch = VideosSearch('NoCopyrightSounds', limit = 2)
        
        print(videosSearch.result())
        ```
        
        <details>
         <summary> Example Result</summary>
        
        ```json
        {
            "result": [
                {
                    "type": "video",
                    "id": "K4DyBUG242c",
                    "title": "Cartoon - On & On (feat. Daniel Levi) [NCS Release]",
                    "publishedTime": "5 years ago",
                    "duration": "3:28",
                    "viewCount": {
                        "text": "389,673,774 views",
                        "short": "389M views"
                    },
                    "thumbnails": [
                        {
                            "url": "https://i.ytimg.com/vi/K4DyBUG242c/hqdefault.jpg?sqp=-oaymwEjCOADEI4CSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBkTusCwcZQlmVAaRQ5rH-mvBuA1g",
                            "width": 480,
                            "height": 270
                        }
                    ],
                    "descriptionSnippet": [
                        {
                            "text": "NCS: Music Without Limitations NCS Spotify: http://spoti.fi/NCS Free Download / Stream: http://ncs.io/onandon \u25bd Connect with\u00a0..."
                        }
                    ],
                    "channel": {
                        "name": "NoCopyrightSounds",
                        "id": "UC_aEa8K-EOJ3D6gOs7HcyNg",
                        "thumbnails": [
                            {
                                "url": "https://yt3.ggpht.com/a-/AOh14GhS0G5FwV8rMhVCUWSDp36vWEvnNs5Vl97Zww=s68-c-k-c0x00ffffff-no-rj-mo",
                                "width": 68,
                                "height": 68
                            }
                        ],
                        "link": "https://www.youtube.com/channel/UC_aEa8K-EOJ3D6gOs7HcyNg"
                    },
                    "accessibility": {
                        "title": "Cartoon - On & On (feat. Daniel Levi) [NCS Release] by NoCopyrightSounds 5 years ago 3 minutes, 28 seconds 389,673,774 views",
                        "duration": "3 minutes, 28 seconds"
                    },
                    "link": "https://www.youtube.com/watch?v=K4DyBUG242c",
                    "shelfTitle": null
                },
                {
                    "type": "video",
                    "id": "yJg-Y5byMMw",
                    "title": "Warriyo - Mortals (feat. Laura Brehm) [NCS Release]",
                    "publishedTime": "3 years ago",
                    "duration": "3:50",
                    "viewCount": {
                        "text": "153,353,801 views",
                        "short": "153M views"
                    },
                    "thumbnails": [
                        {
                            "url": "https://i.ytimg.com/vi/yJg-Y5byMMw/hqdefault.jpg?sqp=-oaymwEjCOADEI4CSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDY-mve79IweErMo-71AsKEIB1m0A",
                            "width": 480,
                            "height": 270
                        }
                    ],
                    "descriptionSnippet": [
                        {
                            "text": "NCS: Music Without Limitations NCS Spotify: http://spoti.fi/NCS Free Download / Stream: http://ncs.io/mortals Connect with NCS:\u00a0..."
                        }
                    ],
                    "channel": {
                        "name": "NoCopyrightSounds",
                        "id": "UC_aEa8K-EOJ3D6gOs7HcyNg",
                        "thumbnails": [
                            {
                                "url": "https://yt3.ggpht.com/a-/AOh14GhS0G5FwV8rMhVCUWSDp36vWEvnNs5Vl97Zww=s68-c-k-c0x00ffffff-no-rj-mo",
                                "width": 68,
                                "height": 68
                            }
                        ],
                        "link": "https://www.youtube.com/channel/UC_aEa8K-EOJ3D6gOs7HcyNg"
                    },
                    "accessibility": {
                        "title": "Warriyo - Mortals (feat. Laura Brehm) [NCS Release] by NoCopyrightSounds 3 years ago 3 minutes, 50 seconds 153,353,801 views",
                        "duration": "3 minutes, 50 seconds"
                    },
                    "link": "https://www.youtube.com/watch?v=yJg-Y5byMMw",
                    "shelfTitle": null
                }
            ]
        }
        ```
        
        </details>
        
        ##### Search for only channels
        
        ```python
        from youtubesearchpython import ChannelsSearch
        
        channelsSearch = ChannelsSearch('NoCopyrightSounds', limit = 10, region = 'US')
        
        print(channelsSearch.result())
        ```
        
        <details>
         <summary> Example Result</summary>
        
        ```json
        {
            "result": [
                {
                    "type": "channel",
                    "id": "UC_aEa8K-EOJ3D6gOs7HcyNg",
                    "title": "NoCopyrightSounds",
                    "thumbnails": [
                        {
                            "url": "//yt3.ggpht.com/ytc/AAUvwngbenDpBxHNZlecDGyccHeVyQB22dPZnPuhbW8LHw=s88-c-k-c0x00ffffff-no-rj-mo",
                            "width": 88,
                            "height": 88
                        },
                        {
                            "url": "//yt3.ggpht.com/ytc/AAUvwngbenDpBxHNZlecDGyccHeVyQB22dPZnPuhbW8LHw=s176-c-k-c0x00ffffff-no-rj-mo",
                            "width": 176,
                            "height": 176
                        }
                    ],
                    "videoCount": "850",
                    "descriptionSnippet": [
                        {
                            "text": "NoCopyrightSounds",
                            "bold": true
                        },
                        {
                            "text": " is a copyright free / stream safe record label, providing free to use music to the content creator community."
                        }
                    ],
                    "subscribers": "28.7M subscribers",
                    "link": "https://www.youtube.com/channel/UC_aEa8K-EOJ3D6gOs7HcyNg"
                },
                {
                    "type": "channel",
                    "id": "UCg-vlcyvOyNVPV6Neogmubg",
                    "title": "NoCopyrightSounds Hindi",
                    "thumbnails": [
                        {
                            "url": "//yt3.ggpht.com/ytc/AAUvwnjDHXULXSvX7u71Rmb2f-Cqly0ron2F1N3szu8Y=s88-c-k-c0x00ffffff-no-rj-mo",
                            "width": 88,
                            "height": 88
                        },
                        {
                            "url": "//yt3.ggpht.com/ytc/AAUvwnjDHXULXSvX7u71Rmb2f-Cqly0ron2F1N3szu8Y=s176-c-k-c0x00ffffff-no-rj-mo",
                            "width": 176,
                            "height": 176
                        }
                    ],
                    "videoCount": "56",
                    "descriptionSnippet": [
                        {
                            "text": "The Official NCS HINDI Songs Channel for Nocopyright hindi audios."
                        }
                    ],
                    "subscribers": "13.7K subscribers",
                    "link": "https://www.youtube.com/channel/UCg-vlcyvOyNVPV6Neogmubg"
                },
                {
                    "type": "channel",
                    "id": "UCrL9x8LllOU2LOVgTo951kA",
                    "title": "NoCopyrightSounds",
                    "thumbnails": [
                        {
                            "url": "//yt3.ggpht.com/ytc/AAUvwnhXShCsmo9VwL4KC8j3GNHgHyBBJ0RCmbAUKrwg=s88-c-k-c0x00ffffff-no-rj-mo",
                            "width": 88,
                            "height": 88
                        },
                        {
                            "url": "//yt3.ggpht.com/ytc/AAUvwnhXShCsmo9VwL4KC8j3GNHgHyBBJ0RCmbAUKrwg=s176-c-k-c0x00ffffff-no-rj-mo",
                            "width": 176,
                            "height": 176
                        }
                    ],
                    "videoCount": "2",
                    "descriptionSnippet": [
                        {
                            "text": "NCS [NopCopyrightSounds] is a channel dedicated to promoting the best FREE DOWNLOAD music on the net. Every track\u00a0..."
                        }
                    ],
                    "subscribers": "1.71K subscribers",
                    "link": "https://www.youtube.com/channel/UCrL9x8LllOU2LOVgTo951kA"
                },
                {
                    "type": "channel",
                    "id": "UCYZvaL6G3m4-UbvWGlyFeLg",
                    "title": "NoCopyrightSounds",
                    "thumbnails": [
                        {
                            "url": "//yt3.ggpht.com/ytc/AAUvwnisxA4V_U0Ffh0K-cdnqwGZjs62hKv2-IAfzIqc=s88-c-k-c0x00ffffff-no-rj-mo",
                            "width": 88,
                            "height": 88
                        },
                        {
                            "url": "//yt3.ggpht.com/ytc/AAUvwnisxA4V_U0Ffh0K-cdnqwGZjs62hKv2-IAfzIqc=s176-c-k-c0x00ffffff-no-rj-mo",
                            "width": 176,
                            "height": 176
                        }
                    ],
                    "videoCount": "33",
                    "descriptionSnippet": null,
                    "subscribers": null,
                    "link": "https://www.youtube.com/channel/UCYZvaL6G3m4-UbvWGlyFeLg"
                },
                {
                    "type": "channel",
                    "id": "UCi7xVhyWWf2eTc0GO0Ty9HQ",
                    "title": "NoCopyrightSounds",
                    "thumbnails": [
                        {
                            "url": "//yt3.ggpht.com/ytc/AAUvwngOJ2zbLEkNs96PNp0g9h27l64mwRFhR1vZ9W7u=s88-c-k-c0x00ffffff-no-rj-mo",
                            "width": 88,
                            "height": 88
                        },
                        {
                            "url": "//yt3.ggpht.com/ytc/AAUvwngOJ2zbLEkNs96PNp0g9h27l64mwRFhR1vZ9W7u=s176-c-k-c0x00ffffff-no-rj-mo",
                            "width": 176,
                            "height": 176
                        }
                    ],
                    "videoCount": "1 video",
                    "descriptionSnippet": null,
                    "subscribers": "2 subscribers",
                    "link": "https://www.youtube.com/channel/UCi7xVhyWWf2eTc0GO0Ty9HQ"
                },
                {
                    "type": "channel",
                    "id": "UCOSiFTIAReRzkPBXaQAuXCQ",
                    "title": "NoCopyrightSounds",
                    "thumbnails": [
                        {
                            "url": "//yt3.ggpht.com/ytc/AAUvwng1UBDlLdYyqTofL6x_5hqPMTFnMXxAN9C9_t8Y=s88-c-k-c0x00ffffff-no-rj-mo",
                            "width": 88,
                            "height": 88
                        },
                        {
                            "url": "//yt3.ggpht.com/ytc/AAUvwng1UBDlLdYyqTofL6x_5hqPMTFnMXxAN9C9_t8Y=s176-c-k-c0x00ffffff-no-rj-mo",
                            "width": 176,
                            "height": 176
                        }
                    ],
                    "videoCount": "8",
                    "descriptionSnippet": [
                        {
                            "text": "YGW MEDIA GROUP 04."
                        }
                    ],
                    "subscribers": "11 subscribers",
                    "link": "https://www.youtube.com/channel/UCOSiFTIAReRzkPBXaQAuXCQ"
                },
                {
                    "type": "channel",
                    "id": "UCSFpIv5SZlg4ub_IWgGKkIA",
                    "title": "NoCopyrightSounds Lyrics",
                    "thumbnails": [
                        {
                            "url": "//yt3.ggpht.com/ytc/AAUvwng_J1igSuKFWowZ8OFpT1dPCPgzqEvVkGImwM3Dpg=s88-c-k-c0x00ffffff-no-rj-mo",
                            "width": 88,
                            "height": 88
                        },
                        {
                            "url": "//yt3.ggpht.com/ytc/AAUvwng_J1igSuKFWowZ8OFpT1dPCPgzqEvVkGImwM3Dpg=s176-c-k-c0x00ffffff-no-rj-mo",
                            "width": 176,
                            "height": 176
                        }
                    ],
                    "videoCount": "82",
                    "descriptionSnippet": [
                        {
                            "text": "Welcome To "
                        },
                        {
                            "text": "NoCopyrightSounds",
                            "bold": true
                        },
                        {
                            "text": " Lyrics "
                        },
                        {
                            "text": "NoCopyrightSounds",
                            "bold": true
                        },
                        {
                            "text": " lyrics provides music from a variety of licenses that are certainly\u00a0..."
                        }
                    ],
                    "subscribers": null,
                    "link": "https://www.youtube.com/channel/UCSFpIv5SZlg4ub_IWgGKkIA"
                },
                {
                    "type": "channel",
                    "id": "UCcE-Gvu5j55MdREM1a4_EqA",
                    "title": "NoCopyrightSounds",
                    "thumbnails": [
                        {
                            "url": "//yt3.ggpht.com/ytc/AAUvwnhbzZwQIVabdGA1SteO2BCtmrG3uT_cpzmJvtBY=s88-c-k-c0x00ffffff-no-rj-mo",
                            "width": 88,
                            "height": 88
                        },
                        {
                            "url": "//yt3.ggpht.com/ytc/AAUvwnhbzZwQIVabdGA1SteO2BCtmrG3uT_cpzmJvtBY=s176-c-k-c0x00ffffff-no-rj-mo",
                            "width": 176,
                            "height": 176
                        }
                    ],
                    "videoCount": "6",
                    "descriptionSnippet": null,
                    "subscribers": "166 subscribers",
                    "link": "https://www.youtube.com/channel/UCcE-Gvu5j55MdREM1a4_EqA"
                },
                {
                    "type": "channel",
                    "id": "UCCOWDgeFmwW--woYtCYws8Q",
                    "title": "NoCopyrightSounds 1 HOUR",
                    "thumbnails": [
                        {
                            "url": "//yt3.ggpht.com/ytc/AAUvwnipj6lV7p6i8Mq7uAlDj5qHsQkiwgwdtPs_vCKy=s88-c-k-c0x00ffffff-no-rj-mo",
                            "width": 88,
                            "height": 88
                        },
                        {
                            "url": "//yt3.ggpht.com/ytc/AAUvwnipj6lV7p6i8Mq7uAlDj5qHsQkiwgwdtPs_vCKy=s176-c-k-c0x00ffffff-no-rj-mo",
                            "width": 176,
                            "height": 176
                        }
                    ],
                    "videoCount": "689",
                    "descriptionSnippet": [
                        {
                            "text": "NoCopyrightSounds",
                            "bold": true
                        },
                        {
                            "text": " is a record label dedicated to releasing FREE music for the sole purpose of providing creators with the finest\u00a0..."
                        }
                    ],
                    "subscribers": null,
                    "link": "https://www.youtube.com/channel/UCCOWDgeFmwW--woYtCYws8Q"
                },
                {
                    "type": "channel",
                    "id": "UCSI5zGuirscirQc6UOy_yww",
                    "title": "NoCopyrightSounds",
                    "thumbnails": [
                        {
                            "url": "//yt3.ggpht.com/ytc/AAUvwni92w-CAOUnlNfyIVxdCmvMoQmENZbw1wjFOQKjug=s88-c-k-c0x00ffffff-no-rj-mo",
                            "width": 88,
                            "height": 88
                        },
                        {
                            "url": "//yt3.ggpht.com/ytc/AAUvwni92w-CAOUnlNfyIVxdCmvMoQmENZbw1wjFOQKjug=s176-c-k-c0x00ffffff-no-rj-mo",
                            "width": 176,
                            "height": 176
                        }
                    ],
                    "videoCount": "29",
                    "descriptionSnippet": [
                        {
                            "text": "NoCopyrightSounds",
                            "bold": true
                        },
                        {
                            "text": " is a Record Label dedicated to giving a platform to the next generation of Artists in Electronic Music,\u00a0..."
                        }
                    ],
                    "subscribers": null,
                    "link": "https://www.youtube.com/channel/UCSI5zGuirscirQc6UOy_yww"
                }
            ]
        }
        ```
        
        </details>
        
        ##### Search for only playlists
        
        ```python
        from youtubesearchpython import PlaylistsSearch
        
        playlistsSearch = PlaylistsSearch('NoCopyrightSounds', limit = 1)
        
        print(playlistsSearch.result())
        ```
        
        <details>
         <summary> Example Result</summary>
        
        ```json
        {
            "result": [
                {
                    "type": "playlist",
                    "id": "PLGde6kPURikrUszpUgafLZiOgr5o7pBF0",
                    "title": "NoCopyrightSounds",
                    "videoCount": "6",
                    "channel": {
                        "name": "Bruno Neves",
                        "id": "UCtqpCV2HkMCSi5InFNBNv0g",
                        "link": "https://www.youtube.com/channel/UCtqpCV2HkMCSi5InFNBNv0g"
                    },
                    "thumbnails": [
                        {
                            "url": "https://i.ytimg.com/vi/K4DyBUG242c/hqdefault.jpg?sqp=-oaymwEWCKgBEF5IWvKriqkDCQgBFQAAiEIYAQ==&rs=AOn4CLBw6Bf7J9COwl1LxqhmGbSQgdFj3w",
                            "width": 168,
                            "height": 94
                        },
                        {
                            "url": "https://i.ytimg.com/vi/K4DyBUG242c/hqdefault.jpg?sqp=-oaymwEWCMQBEG5IWvKriqkDCQgBFQAAiEIYAQ==&rs=AOn4CLBjJCIZlrSGSPjc-7yKc0QQuWRdhg",
                            "width": 196,
                            "height": 110
                        },
                        {
                            "url": "https://i.ytimg.com/vi/K4DyBUG242c/hqdefault.jpg?sqp=-oaymwEXCPYBEIoBSFryq4qpAwkIARUAAIhCGAE=&rs=AOn4CLCRIQ0IochteE0KM2tlK2PVVAQKhA",
                            "width": 246,
                            "height": 138
                        },
                        {
                            "url": "https://i.ytimg.com/vi/K4DyBUG242c/hqdefault.jpg?sqp=-oaymwEXCNACELwBSFryq4qpAwkIARUAAIhCGAE=&rs=AOn4CLAQYBDz8gWKw_q4Zyb_H6J_DdZCaA",
                            "width": 336,
                            "height": 188
                        }
                    ],
                    "link": "https://www.youtube.com/playlist?list=PLGde6kPURikrUszpUgafLZiOgr5o7pBF0"
                }
            ]
        }
        ```
        
        </details>
        
        ##### Search with a filter or sort
        
        ```python
        from youtubesearchpython import *
        
        customSearch = CustomSearch('NoCopyrightSounds', VideoSortOrder.uploadDate, limit = 1)
        
        print(customSearch.result())
        ```
        
        <details>
         <summary> Example Result</summary>
        
        ```json
        {
            "result": [
                {
                    "type": "video",
                    "id": "k8-drvf4Ruo",
                    "title": "Ambient Music 2020 \ud83c\udfb5 voices \ud83c\udfb5 NoCopyrightSounds",
                    "publishedTime": "30 minutes ago",
                    "duration": "2:29",
                    "viewCount": {
                        "text": "4 views",
                        "short": "4 views"
                    },
                    "thumbnails": [
                        {
                            "url": "https://i.ytimg.com/vi/k8-drvf4Ruo/hq720.jpg?sqp=-oaymwEjCOgCEMoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDomB-9ivVHpwci6STdNAqQBMBzJA",
                            "width": 360,
                            "height": 202
                        },
                        {
                            "url": "https://i.ytimg.com/vi/k8-drvf4Ruo/hq720.jpg?sqp=-oaymwEXCNAFEJQDSFryq4qpAwkIARUAAIhCGAE=&rs=AOn4CLCPrVwYygJ3627h8F-oU3khKehm4g",
                            "width": 720,
                            "height": 404
                        }
                    ],
                    "descriptionSnippet": [
                        {
                            "text": "Don't forget to like & share if you enjoy it."
                        }
                    ],
                    "channel": {
                        "name": "Sky Sound",
                        "id": "UCQT8W5qZn7TCZBW39dVoaBw",
                        "thumbnails": [
                            {
                                "url": "https://yt3.ggpht.com/a-/AOh14GhxrkkF27iL3sLTKzWLu3rrO-qtQ7uMPg4SqA=s68-c-k-c0x00ffffff-no-rj-mo",
                                "width": 68,
                                "height": 68
                            }
                        ],
                        "link": "https://www.youtube.com/channel/UCQT8W5qZn7TCZBW39dVoaBw"
                    },
                    "accessibility": {
                        "title": "Ambient Music 2020 \ud83c\udfb5 voices \ud83c\udfb5 NoCopyrightSounds by Sky Sound 30 minutes ago 2 minutes, 29 seconds 4 views",
                        "duration": "2 minutes, 29 seconds"
                    },
                    "link": "https://www.youtube.com/watch?v=k8-drvf4Ruo",
                    "shelfTitle": null
                }
            ]
        }
        ```
        
        </details>
        
        You may see the [example](https://github.com/alexmercerind/youtube-search-python/blob/vnext/example.py) for more information.
        
        
        ## Getting Result On The Next Pages
        
        You may call ```next``` method as follows, to get the results on the next pages.
        
        Calling ```result``` method after calling ```next``` will give you result on that the next page.
        
        ```py
        search = VideosSearch('NoCopyrightSounds')
        print(search.result()['result'])
        # Getting result on 2nd page.
        search.next()
        print(search.result()['result'])
        # Getting result on 3rd page.
        search.next()
        print(search.result()['result'])
        # Getting result on 4th page.
        search.next()
        print(search.result()['result'])
        ```
        
        
        ## Configuration
        
        While instantiating any of the classes, you may provide optional parameters as follows to get the results accordingly.
        
        ```py
        search = Search('NoCopyrightSounds', limit = 20, language = 'en-US', region = 'US')
        ```
        
        You may switch between the types of result, by changing the value of ```mode``` optional parameter while calling the ```result``` method.
        
        ###### Getting JSON
        
        ```py
        result = search.result(mode = ResultMode.json)
        ```
        
        ###### Getting dictionary
        
        ```py
        result = search.result(mode = ResultMode.dict)
        ```
        
        ## License
        
        MIT
        
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.6
Description-Content-Type: text/markdown
