毎晩、カナダのオタワ時間の深夜に、スクリプトを介してYouTubeチャンネルに動画をアップロードします。
1時間後、スクリプトを使用して最後にアップロードされたビデオのビデオIDを取得し、Webサーバーにアップロードするiframeファイルを作成しました。これは数年後に機能を停止しました
私はプログラマーではなく、これを設定するのはずっと前のことなので、どこから始めればよいのかわかりません。YouTube APIのWebページとコンソールを確認しましたが、何も見つかりませんでした。スクリプトを実行しても、過去数年間のように「videoid」が返されないことはわかっています。
'''
url="https://www.googleapis.com/youtube/v3/search?order=date&part=snippet&channelId=UCOUnH8qVLmUe_2mmupWzEmQ&maxResults=1&key=DEVELOPERS KEY"
lastVideoId=$(curl -s "$url" | grep videoId | awk -F'[""]' '{print $4}')
'''
最後のvideoidは変数$ lastVideoIdとして保存されます
これは、googleapisとapikeyを必要としない1つのソリューションです。それはあなたのチャンネルのRSSフィードを使用し、最初に見つけたビデオIDを返します。
# Define RSS feed for your channel
URL="https://www.youtube.com/feeds/videos.xml?channel_id=UCOUnH8qVLmUe_2mmupWzEmQ"
videoid=$(curl -s $URL | grep "/watch?v=" | head -1 | sed "s/.*\?v=\([^\"]*\)\".*/\1/g")
echo $videoid
説明:
curl -s $URL # get rss feed (curl in silent mode)
| # pipe output to...
grep "/watch?v=" # get only video urls
| # pipe output to...
head -1 # take first line with url
| # pipe output to...
sed "s/ # sed in substitution mode
\?v= # search '?v=' in url
\([^\"]*\)\" # put everything up to next " in arg1 (\1)
.* # ignore rest of the line
/\1 # print only arg1
/g # global on the whole line
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加