Skip to content

Instantly share code, notes, and snippets.

@madosuki
Created April 15, 2017 07:21
Show Gist options
  • Save madosuki/cca18033488a226cb8644ff6550a5889 to your computer and use it in GitHub Desktop.
Save madosuki/cca18033488a226cb8644ff6550a5889 to your computer and use it in GitHub Desktop.
# conding: utf-8
import sys
import os.path
from mastodon import Mastodon
import appscript
import re
ClientID = "Text FileName"
TokenF = "Text FileName"
class FileCheck:
def __init__(self):
self.idExist = False
self.tokenExist = False
def setExist(self):
self.idExist = os.path.exists(ClientID)
self.tokenExist = os.path.exists(TokenF)
class VarSong:
def __init__(self):
self.songName = ""
self.albumName = ""
self.artisName = ""
def setsongName(self, s):
self.songName = s
def setalbumName(self, s):
self.albumName = s
def setartistName(self, s):
self.artistName = s
argvs = sys.argv
argc = len(argvs)
baseurl = "Your Server"
YourMail = "Your Email"
YourPass = "Your Password"
check = FileCheck()
check.setExist()
varsong = VarSong()
if not check.idExist:
Mastodon.create_app("Your App Name", api_base_url = baseurl, to_file = ClientID)
if not check.tokenExist:
mastodon = Mastodon(
client_id = ClientID,
api_base_url = baseurl)
mastodon.log_in(
YourMail,
YourPass,
to_file = TokenF)
FileCheck.setExist()
if check.idExist == True and check.tokenExist == True:
client = Mastodon(
client_id = ClientID,
access_token = TokenF,
api_base_url = baseurl)
#iTunes Toot
itunes = appscript.app("iTunes")
pattern = re.compile(r'k\.stopped')
ExitStatus = True
while(ExitStatus):
Appstatus = itunes.properties.get()
checkPlayOrStop = pattern.search(str(Appstatus))
if not checkPlayOrStop:
nowPlayTrack = itunes.current_track
if nowPlayTrack.name.get() != varsong.songName:
varsong.setsongName(nowPlayTrack.name.get())
varsong.setalbumName(nowPlayTrack.album.get())
varsong.setartistName(nowPlayTrack.artist.get())
print(varsong.songName)
text = u"{} - {} - {}\n#nowplaying".format(varsong.songName, varsong.albumName, varsong.artistName)
client.toot(text)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment