from youtube_statistics import YTstats API_KEY = '##########################################' channel_id = 'UCGXsku75ELWndSG7kEihspg' yt = YTstats(API_KEY, channel_id) yt.extract_all() yt.dump()
from youtube_statistics import YTstats from data import main API_KEY = input("Enter API Key:") channel_id = input("Enter the channel ID :") print("Please wait...") yt = YTstats(API_KEY, channel_id) yt.get_channel_statistics() yt.get_channel_video_data() file_name = yt.dump() main(file_name)
def main(): menu = [ "検索キーワードでの上位閲覧チャネルの確認", "自分のチャンネルの状況を確認", "他のチャンネルの状況を確認", "Youtubeでデータを取り直す" ] choice = st.sidebar.radio("Menu", menu) if choice == "検索キーワードでの上位閲覧チャネルの確認": df_output = pd.read_csv("./youtube.csv") search_text = pd.read_csv("./search.csv") st.write("### ***{}***と検索した時の上位チャンネル".format(search_text.columns[1])) st.write("検索キーワードを選びなおす際には、「Youtubeでデータを取り直す」を選択") #st.write(search_text) df_output['viewCount'] = df_output['viewCount'].astype(int) values = st.slider("上位何番目を除く", min_value=0, max_value=50, step=1) df_output.groupby('channelTitle').sum().sort_values( by='viewCount', ascending=False)[values:].plot(kind='bar', y='viewCount', figsize=(25, 10), fontsize=20) st.pyplot() elif choice == "自分のチャンネルの状況を確認": channel_status.channel_status("紗綾ちゃんねる〜saaya_channel〜.json") elif choice == "他のチャンネルの状況を確認": channel_target = ["こじはる", "ピンククラッカーズ", "森咲智美"] selected_channel = st.sidebar.radio("見たいチャンネルを選択", channel_target) if selected_channel == "こじはる": channel_status.channel_status("haruna_kojima's_cat_nap.json") elif selected_channel == "ピンククラッカーズ": #st.write("ピンククラッカーズ.json") channel_status.channel_status("ピンククラッカーズ.json") elif selected_channel == "森咲智美": st.write("こじはると同じものが出る") #channel_status.channel_status("森咲智美チャンネル Tomomi Morisaki Channel.json") elif choice == "Youtubeでデータを取り直す": passcode = st.text_input("Pass codeを入力してください") if passcode == "1234567890": search_menu = ["美容", "グラビア", "日常", "ボードゲーム"] search_target = st.radio("上位検索したいワード", search_menu) if st.checkbox("{}を検索した検索データの更新".format(search_target)): df_search = pd.DataFrame() df_search[search_target] = search_target df_search.to_csv("./search.csv") df = get_video_info(part='snippet', q=search_target, order='viewCount', type='video', num=20) df_static = pd.DataFrame( list(df['videoId'].apply(lambda x: get_statistics(x)))) df_output = pd.concat([df, df_static], axis=1) df_output.to_csv("./youtube.csv") if st.checkbox("自分のチャンネルデータの更新"): channel_id = "UCYp373JfGNTCu_M9AGhg7tA" yt = YTstats(YOUTUBE_API_KEY, channel_id) yt.extract_all() yt.dump() # dumps to .json st.write("データのダウンロードが完了しました") if st.checkbox("他のチャンネルデータの更新"): channel_id = "UCOjmYCnYlTcdoD2DKHvrV5g" yt = YTstats(YOUTUBE_API_KEY, channel_id) yt.extract_all() yt.dump() # dumps to .json st.write("データのダウンロードが完了しました") else: st.write("やり直してください")
from youtube_statistics import YTstats API_KEY = 'AIzaSyBD2iQAO6EFpiVdcKmt0-L5xEi6GyV75K8' channel_id = "UCkZLRWeJemZ5GXb6PbMx70w" #python_engineer_id = 'UCbXgNpp0jedKWcQiULLbDTA' #channel_id = python_engineer_id #yt = YTstats(API_KEY, channel_id) #yt.get_channel_statistics() #yt.get_channel_video_data() #yt.dump() yt = YTstats(API_KEY, channel_id) yt.extract_all() yt.dump() # dumps to .json