« [Numbers]16進数を10進数に変換する HEX2DEC | トップページ | [AppleScript]スクリプトメニューを利用可能にする。(10.6x) »

[Safari]YouTubeのユーザーチャンネルのRSSを登録するAppleScript


これは失敗作ですな
軽量化して確実なこちらをどうぞ


----------------------

Website_image20120118_232241


スクリプトメニューに入れて使います。
スクリプトメニューの出し方はこちら


※Uploaded videosのページ等 一部のページからの登録には対応していません。

set theURL to ""
set theUserID to ""
set theGoogleReaderURL to "https://www.google.com/reader/view/feed/"

--------------------------全面のURLを取得
tell application "Safari"
activate
set theURL to (URL of document 1) as Unicode text
end tell
------------------USERIDの取得の処理開始
--------------------------VIDEOIDがあるか?を判定します。
set theSearch to "v="
set theSerRes to offset in theURL of theSearch
if theSerRes is 0 then
--------------------------VIDEOIDが無い場合はプレイリスト等ですからプレイリストかどか?を判定
--------------------------新しいタイプのプレイリストか?を判定
set theNewListSearch to "playlist"
set theNewListRes to offset in theURL of theNewListSearch
if theNewListRes is 0 then
--------------------------新しいプレイリストでは無い場合は旧バージョンなのでURLからUserIDを取得します。
set theUserChCom to "echo " & theURL & " | awk -F/ '{print $5}'| awk -F# '{print $1}'"
set theUserID to do shell script theUserChCom
else
--------------------------新しいタイプのプレイリストか?を判定
set theListSearch to "list=PL"
set theListRes to offset in theURL of theListSearch
if theListRes is 0 then
set theListRes to ""
--------------------------旧タイプのプレイリストIDの処理
set theListSearch to "list="
set theListRes to offset in theURL of theListSearch
set theListID to characters (theListRes + 5) thru (theListRes + 20) of theURL as Unicode text
set theListAtomURL to "http://gdata.youtube.com/feeds/api/playlists/" & theListID & "?v=2"
set theCURLcom to "curl " & theListAtomURL & " | sed -e 's/<name>/¤/' | sed -e 's/<\\/name>/¤/' | awk -F¤ '{print $2}' | tr '\n' '^' | awk -F^ '{print $1}'" as Unicode text
set theUserID to do shell script theCURLcom
else
--------------------------新しいタイプのプレイリストIDの処理
set theListID to characters (theListRes + 7) thru (theListRes + 22) of theURL as Unicode text
set theListAtomURL to "https://gdata.youtube.com/feeds/api/playlists/" & theListID & "?v=2"
set theCURLcom to "curl " & theListAtomURL & " | sed -e 's/<name>/¤/' | sed -e 's/<\\/name>/¤/' | awk -F¤ '{print $2}' | tr '\n' '^' | awk -F^ '{print $1}'" as Unicode text
set theUserID to do shell script theCURLcom
end if
end if
else
--------------------------VIDEOIDがある場合の処理
set theVideoID to characters (theSerRes + 2) thru (theSerRes + 12) of theURL as Unicode text
set theAtomURL to "https://gdata.youtube.com/feeds/api/videos/" & theVideoID & "?v=2"
set theCURLcom to "curl " & theAtomURL & " | sed -e 's/<name>/¤/' | sed -e 's/<\\/name>/¤/' | awk -F¤ '{print $2}'" as Unicode text
set theUserID to do shell script theCURLcom
end if
------------------USERIDの取得の処理終了
--------------------------GoogleReader用のURLへ整形します
set theUserRssURL to theGoogleReaderURL & "https://gdata.youtube.com/feeds/base/users/" & theUserID & "/uploads"

--------------------------GoogleReader用のURLを開きます
tell application "Safari"

launch
activate
make new document
delay 1
tell window 1
open location theUserRssURL
end tell

end tell


「GetYouTubeFeedsSafari.rtf」をダウンロード

「GetYouTubeFeedsSafari.scpt.zip」をダウンロード

|

« [Numbers]16進数を10進数に変換する HEX2DEC | トップページ | [AppleScript]スクリプトメニューを利用可能にする。(10.6x) »

AppleScript」カテゴリの記事

YouTube Rss」カテゴリの記事

トラックバック


この記事へのトラックバック一覧です: [Safari]YouTubeのユーザーチャンネルのRSSを登録するAppleScript:

« [Numbers]16進数を10進数に変換する HEX2DEC | トップページ | [AppleScript]スクリプトメニューを利用可能にする。(10.6x) »