Development Status :: 3 - Alpha
Copyright (c) 2023 MinWoo Park
Contains several useful features that can be used for youtube related projects. This package is intended to provide useful features for video editing, including crawling through the YouTube Data API v3 and Selenium.
pip install youtuber
- Install the Python package
youtuber
-pip install youtuber
- Obtain an API key for YouTube Data API v3 from the following link and enter it.
- Enter the path of chromedriver.exe.
- Enter the YouTube search keyword, the number of videos to crawl, and the number of comment pages to crawl.
- Enter the full path of the CSV file to be saved after execution. If encoding issues arise, please save the returned pd.DataFrame object separately.
from youtuber import AutoCrawler
DEVELOPER_KEY = "enter_your_dev_api_key" # Enter your DEV API KEY at https://console.cloud.google.com/apis/api/youtube.googleapis.com/credentials?project=sincere-canyon-278402
CHOROME_PATH = r'C:\Program Files\chromedriver.exe' # Enter path of 'chromdriver.exe'
auto = AutoCrawler(DEVELOPER_KEY, CHOROME_PATH)
search_keyword = 'chatGPT' # Youtube Search Keyword
max_link_len = 2 # How many videos you target to crawl?
max_comment_pg_len = 2 # How many comment pages you target to crawl?
save_path = './enter/any/path/result.csv'
df = auto.run(search_keyword, max_link_len, max_comment_pg_len, save_path)
- Main tutorial: https://github.com/DSDanielPark/youtuber/blob/main/docs/tutorial.ipynb
- Sub tutorial folder: Tutorials for each function can be found in this folder.
Retrieve YouTube search results.
You can get your 'Youtube Data API v3' key in here, and you can find some guide in here.
from youtuber import YoutubeAPI
DEVELOPER_KEY = "enter_your_api_key"
youtuber_v3 = YoutubeAPI(DEVELOPER_KEY)
links = youtuber_v3.get_links('chatGPT', 3) #YouTube Search Keyword = 'chatGPT', return 3 links.
links
['https://www.youtube.com/watch?v=xxxxx',
'https://www.youtube.com/watch?v=xxxxx',
'https://www.youtube.com/watch?v=xxxxx']
Retrieve comment data.
from youtuber import YoutubeCrawler
chrome_driver = r'C:\Program Files\chromedriver.exe'
youtuber_crawl = YoutubeCrawler(chrome_driver)
df = youtuber_crawl.get_comment_df(links, 1) #if you enter 1, only 1 page of comments will be searched.
df #You can get pd.DataFrame object.
Due to dependency issues, the AutoCrawler class was created separately without inheritance, but it includes both the YoutubeAPI and YoutubeCrawler methods. The AutoCrawler class performs both search functionality via the Youtube Data API v3 and comment crawling via Selenium.
[1] YouTube Data API v3: https://developers.google.com/youtube/v3/getting-started?hl=ko
[2] Selenium python: https://selenium-python.readthedocs.io/
Important Warning:
All legal responsibilities associated with the use of the package lie with the user.
The Python package "youtuber" provides code for Python users to easily access data through the YouTube Data API v3 and Selenium. All licenses follow those of the API and dependent packages, and all responsibility for handling data and using the package lies with the user. There is no monetary compensation received for the use of this code, and it should be noted that there is no liability for the use of the code. Please refer to the YouTube Data API page for more details. https://developers.google.com/youtube/v3?hl=ko