Как отобразить число, выбранное от удаленного URL в индикаторе панели задач?

Я ищу решение (приложение), которое позволило бы мне выполнять запрос к конкретной веб-странице каждый x секунды и получать число (число является единственным содержанием там, никаким HTML, никаким xml или чем-либо еще), и отобразите это число в панели задач.

Есть ли там такое приложение?

Спасибо

1
задан 24 October 2014 в 06:13

1 ответ

Следующий отрывок Python должен работать на Вас:

#!/usr/bin/env python

import re
import sys
import urllib2

from gi.repository import Gtk, GLib
from gi.repository import AppIndicator3 as appindicator

class MyIndicator:

    def __init__(self):
    # Create Indicator with icon and label
        icon_image = "/usr/share/unity/icons/panel-shadow.png"
        self.ind = appindicator.Indicator.new(
            "MagicNumber",
            icon_image,
            appindicator.IndicatorCategory.APPLICATION_STATUS
        )
        self.ind.set_status(appindicator.IndicatorStatus.ACTIVE)
        self.menu_structure()

    # Menu structure
    def menu_structure(self):
        # GTK menu
        self.menu = Gtk.Menu()
        self.exit = Gtk.MenuItem("Exit")
        self.exit.connect("activate", self.quit)
        self.exit.show()
        self.menu.append(self.exit)
        self.ind.set_menu(self.menu)

        content = urllib2.urlopen('http://askubuntu.com/questions')
        questions = re.search('<div class="summarycount al">(.*?)</div>', content.read())
        self.ind.set_label(str(questions.group(1)), "")

        GLib.timeout_add_seconds(2,self.menu_structure) 

    def quit(self, widget):
        sys.exit(0)

if __name__ == "__main__":
    indicator = MyIndicator()
    Gtk.main()

Просто заменяют эти url, 113-секундная задержка и re.search шаблон для Ваших потребностей.

re.search('(.*)', content.read()) должен работать, если Ваш файл только содержит число.

вышеупомянутый код отображает общие вопросы на Askubuntu в Вашей панели задач:


                     

Ссылка: https://unity.ubuntu.com/projects/appindicators /

2
ответ дан 10 November 2019 в 23:30

Другие вопросы по тегам:

Похожие вопросы: