Разобрать новый URL в IFTTT - PullRequest
       36

Разобрать новый URL в IFTTT

0 голосов
/ 16 декабря 2018

.

Программа чтения RSS в IFTTT не любит https://rss.art19.com/the-daily.Я использую Python для извлечения новой ссылки и schedule это каждое утро в 06:30.Мне, однако, очень трудно разобрать новый url в апплете IFTTT.Я использую glitch.com для объединения событий.

Смысл в том, чтобы автоматически воспроизводить этот подкаст в 06:30 на моей установке Sonos.

        import schedule
        import time
        from bs4 import BeautifulSoup
        import requests


        def job():
            url = 'https://rss.art19.com/the-daily'
            request = requests.get(url)
            respose = request.content.decode('utf-8')
            soup = BeautifulSoup(respose, 'lxml')

            link = soup.find_all('enclosure')[0]

            a = str(link).split(' ')[3]
            x = slice(a)
            y = str(x).split('"')[1]

            print(y) 



        # def notification(message):
        #  report = {}
        #  report[“value1”] = message
        #  requests.post('https://maker.ifttt.com/trigger/play_sonos/with/key/KEY", data=report')

        # notification(number)

        schedule.every().day.at("06:30").do(job,'It is 06:30am')
        print('\n')
        print(' Got it')

        while True:
            schedule.run_pending()
            time.sleep(60)

1 Ответ

0 голосов
/ 16 декабря 2018

Я использовал библиотеку SOCO.

        from soco import SoCo
        import schedule
        import time
        from bs4 import BeautifulSoup
        import requests

        #Play5
        five_son = SoCo('PLAYER_IP')

        #Play5(Office)
        five_office_son = SoCo('PLAYER_IP')

        #Play3
        three_son = SoCo('PLAYER_IP')
        print( 'Players are Active! ')
        print('\n')


        def get():
            url = 'https://rss.art19.com/the-daily'
            request = requests.get(url)
            respose = request.content.decode('utf-8')
            soup = BeautifulSoup(respose, 'lxml')

            link = soup.find_all('enclosure')[0]

            a = str(link).split(' ')[3]
            x = slice(a)
            y = str(x).split('"')[1]

            return y

        def job():  
            sonos = five_office_son.partymode()
            sonos.play_uri(get())

            track = sonos.get_current_track_info()

            print(track)

            sonos.pause()
            sonos.play()


        schedule.every().monday.at("06:30").do(job,'It is 06:30am')
        schedule.every().tuesday.at("06:30").do(job,'It is 06:30am')
        schedule.every().wednesday.at("06:30").do(job,'It is 06:30am')
        schedule.every().thursday.at("06:30").do(job,'It is 06:30am')
        schedule.every().friday.at("06:30").do(job,'It is 06:30am')
        print('\n')
        print('Got it')

        while True:
            schedule.run_pending()
            time.sleep(60)
...