• [^] # Re: merci, plus qu'à me lancer...

    Posté par . En réponse au message Gnome 2.6 : rotation de fond d'écran. Évalué à 1.

    C'est moche mais ça marche...


    #!/usr/bin/python

    # import des modules python necessaires
    import os, re, time, random, commands

    ########################################
    # configuration
    #
    # repertoire ou prendre les images
    Home = "/home/guix/Desktop/photos"
    # extensions a chercher
    File_Match = re.compile('[{jpg}{gif}]$')

    ########################################
    #
    # etape 1 : prendre une image au hasard
    #
    # ---------- fonction de recherche : explore le repertoire et les sous repertoires et dresse une liste
    def Dir_Contents(Item=""):
    Final_List = []
    if Item == '': return ('')
    elif os.path.isdir(Item):
    List = os.listdir(Item)
    for Item2 in List:
    Item3 = Item + "/" + Item2
    Temp_List = Dir_Contents(Item=Item3)
    for Item4 in Temp_List: Final_List.append(Item4)
    elif os.path.isfile(Item):
    if File_Match.search(Item): return([Item])
    else: return([])
    return (Final_List)
    # ---------- fin fonction

    List = Dir_Contents(Home)
    # randomisation du nombre de fois ou random est appelle
    Secs = int(time.strftime('%S')) * int(time.strftime('%H')) * int(time.strftime('%M'))
    for i in range(0,Secs): random.random()

    # obtenir aleatoirement un fichier
    Position = random.randint(0,len(List) - 1)
    Fichier = (List[Position])

    ##############################################
    # etape 2 : modifier le fonds d'ecran de Gnome
    #
    guix = "gconftool-2 -t string -s /desktop/gnome/background/picture_filename '" + str(Fichier) + "'"
    commands.getstatusoutput(guix)