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)
Exemple #3
0
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("やり直してください")
Exemple #4
0
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