Bing Image du jour en tant que papier peint de bureau?

27

Quelqu'un peut-il m'aider à créer une image Bing sur mon fond d'écran?

  • Cela fonctionne donc en téléchargeant la meilleure qualité d'image à ce jour.
  • Ensuite, stockez-le dans le dossier Picture de votre compte.
  • Après cela, changer automatiquement l'image elle-même.
  • Il devrait continuer la même chose tous les jours sans tracas en arrière-plan.
  • Probablement quelque chose que je dois ajouter dans les applications de démarrage.
  • Des différences entre les versions d'Ubuntu?

-Est-ce que je dois écrire un script? Cela serait apprécié par beaucoup d'autres aussi! Merci d'avance:)

    
posée Amir Shahab 19.11.2013 - 15:19
la source

7 réponses

20

Le plus simple serait probablement d’installer divers . C'est un gestionnaire de papier peint qui fait vraiment un excellent travail pour changer votre fond d'écran à la fréquence souhaitée.

Voici quelques paramètres:

  • la fréquence du téléchargement
  • la fréquence de modification de l'image (une fois par jour, à chaque redémarrage, à chaque minute, ...)
  • où vous voulez télécharger vos images depuis
  • où vous voulez les stocker sur votre ordinateur
  • cite (automatiquement ou à partir d’une source)
  • une belle horloge.

Il existe également un paramètre pour l’exécuter lors de la connexion. Si vous activez cela, puis ajoutez votre image bing de l'url du jour ( http://www.bing.com/images/search?q=picture+of+the+day&qpvt=picture+of+the+day&FORM=IGRE ?), Vous êtes tous définis.

Il peut être trouvé dans le centre de logiciels et il a une cote de 5 *!

Voici quelques captures d'écran:

    
réponse donnée don.joey 06.01.2014 - 15:40
la source
13

J'ai écrit un petit script de noeud qui fait exactement cela: lien

Pour l'installer, vous aurez besoin de nodejs:

sudo apt-get install nodejs npm

Installation:

Dans la ligne de commande, exécutez:

sudo npm install -g bing-daily-wallpaper

Utilisation:

Pour changer le fond d'écran, faites (vous pouvez ajouter cette commande à vos applications de démarrage):

bing-daily-wallpaper
    
réponse donnée Dorian Marchal 24.04.2015 - 23:46
la source
8

Il y a quelque temps j'ai trouvé le script suivant (je ne me souviens plus exactement où en ce moment, mais quand je trouverai, j'ajouterai aussi le source) lequel j'ai changé un peu et qui fonctionne bien pour ce que vous demandé si est défini comme une tâche cron (voir ici comment faire):

#!/bin/bash

# export DBUS_SESSION_BUS_ADDRESS environment variable useful when the script is set as a cron job
PID=$(pgrep gnome-session)
export DBUS_SESSION_BUS_ADDRESS=$(grep -z DBUS_SESSION_BUS_ADDRESS /proc/$PID/environ|cut -d= -f2-)


# $bing is needed to form the fully qualified URL for
# the Bing pic of the day
bing="www.bing.com"

# $xmlURL is needed to get the xml data from which
# the relative URL for the Bing pic of the day is extracted
#
# The mkt parameter determines which Bing market you would like to
# obtain your images from.
# Valid values are: en-US, zh-CN, ja-JP, en-AU, en-UK, de-DE, en-NZ, en-CA.
#
# The idx parameter determines where to start from. 0 is the current day,
# 1 the previous day, etc.
xmlURL="http://www.bing.com/HPImageArchive.aspx?format=xml&idx=1&n=1&mkt=en-US"

# $saveDir is used to set the location where Bing pics of the day
# are stored.  $HOME holds the path of the current user's home directory
saveDir="$HOME/Pictures/BingDesktopImages/"

# Create saveDir if it does not already exist
mkdir -p $saveDir

# Set picture options
# Valid options are: none,wallpaper,centered,scaled,stretched,zoom,spanned
picOpts="zoom"

# The desired Bing picture resolution to download
# Valid options: "_1024x768" "_1280x720" "_1366x768" "_1920x1200"
desiredPicRes="_1366x768"

# The file extension for the Bing pic
picExt=".jpg"

# Extract the relative URL of the Bing pic of the day from
# the XML data retrieved from xmlURL, form the fully qualified
# URL for the pic of the day, and store it in $picURL

# Form the URL for the desired pic resolution
desiredPicURL=$bing$(echo $(curl -s $xmlURL) | grep -oP "<urlBase>(.*)</urlBase>" | cut -d ">" -f 2 | cut -d "<" -f 1)$desiredPicRes$picExt

# Form the URL for the default pic resolution
defaultPicURL=$bing$(echo $(curl -s $xmlURL) | grep -oP "<url>(.*)</url>" | cut -d ">" -f 2 | cut -d "<" -f 1)

# $picName contains the filename of the Bing pic of the day

# Attempt to download the desired image resolution. If it doesn't
# exist then download the default image resolution
if wget --quiet --spider "$desiredPicURL"
then

    # Set picName to the desired picName
    picName=${desiredPicURL##*/}
    # Download the Bing pic of the day at desired resolution
    curl -s -o $saveDir$picName $desiredPicURL
else
    # Set picName to the default picName
    picName=${defaultPicURL##*/}
    # Download the Bing pic of the day at default resolution
    curl -s -o $saveDir$picName $defaultPicURL
fi

# Set the GNOME3 wallpaper
gsettings set org.gnome.desktop.background picture-uri "file://$saveDir$picName"

# Set the GNOME 3 wallpaper picture options
gsettings set org.gnome.desktop.background picture-options $picOpts

# Remove pictures older than 30 days
#find $saveDir -atime 30 -delete

# Exit the script
exit
    
réponse donnée Radu Rădeanu 06.01.2014 - 15:17
la source
3

Un bon script est listé ici qui fonctionne toujours bien sur Ubuntu 14.04 (nécessite curl installé):

lien

et je vais copier la dernière version ici:

#!/bin/bash

# $bing is needed to form the fully qualified URL for
# the Bing pic of the day
bing="www.bing.com"

# $xmlURL is needed to get the xml data from which
# the relative URL for the Bing pic of the day is extracted
#
# The mkt parameter determines which Bing market you would like to
# obtain your images from.
# Valid values are: en-US, zh-CN, ja-JP, en-AU, en-UK, de-DE, en-NZ, en-CA.
#
# The idx parameter determines where to start from. 0 is the current day,
# 1 the previous day, etc.
xmlURL="http://www.bing.com/HPImageArchive.aspx?format=xml&idx=0&n=1&mkt=en-US"

# $saveDir is used to set the location where Bing pics of the day
# are stored.  $HOME holds the path of the current user's home directory
saveDir=$HOME'/Pictures/BingDesktopImages/'

# Create saveDir if it does not already exist
mkdir -p $saveDir

# Set picture options
# Valid options are: none,wallpaper,centered,scaled,stretched,zoom,spanned
picOpts="zoom"

# The desired Bing picture resolution to download
# Valid options: "_1024x768" "_1280x720" "_1366x768" "_1920x1200"
desiredPicRes="_1920x1200"

# The file extension for the Bing pic
picExt=".jpg"

# Extract the relative URL of the Bing pic of the day from
# the XML data retrieved from xmlURL, form the fully qualified
# URL for the pic of the day, and store it in $picURL

# Form the URL for the desired pic resolution
desiredPicURL=$bing$(echo $(curl -s $xmlURL) | grep -oP "<urlBase>(.*)</urlBase>" | cut -d ">" -f 2 | cut -d "<" -f 1)$desiredPicRes$picExt

# Form the URL for the default pic resolution
defaultPicURL=$bing$(echo $(curl -s $xmlURL) | grep -oP "<url>(.*)</url>" | cut -d ">" -f 2 | cut -d "<" -f 1)

# $picName contains the filename of the Bing pic of the day

# Attempt to download the desired image resolution. If it doesn't
# exist then download the default image resolution
if wget --quiet --spider "$desiredPicURL"
then

    # Set picName to the desired picName
    picName=${desiredPicURL##*/}
    # Download the Bing pic of the day at desired resolution
    curl -s -o $saveDir$picName $desiredPicURL
else
    # Set picName to the default picName
    picName=${defaultPicURL##*/}
    # Download the Bing pic of the day at default resolution
    curl -s -o $saveDir$picName $defaultPicURL
fi

# Set the GNOME3 wallpaper
DISPLAY=:0 GSETTINGS_BACKEND=dconf gsettings set org.gnome.desktop.background picture-uri '"file://'$saveDir$picName'"'

# Set the GNOME 3 wallpaper picture options
DISPLAY=:0 GSETTINGS_BACKEND=dconf gsettings set org.gnome.desktop.background picture-options $picOpts

# Exit the script
exit
    
réponse donnée Xebozone 23.03.2015 - 02:53
la source
2

J'ai vérifié cela pendant un moment et semble fonctionner.

#!/bin/bash
cd 
rm ./dodo.html
wget --no-proxy --output-document=dodo.html http://www.bing.com
rm ./dwallpaper.jpg
wget --no-proxy --output-document=dwallpaper 'sed -n "s/^.*g_img *= *{ *url:'\([^']*\)'.*$//p" < dodo.html | sed 's/^&quot;\(.*\)&quot;$//' | sed 's/^\/\(.*\)/http:\/\/www.bing.com\//''
rm ./dodo.html
gsettings set org.gnome.desktop.background picture-uri 'file:///home/YourName/dwallpaper'

Si vous travaillez sous proxy, supprimez --no-proxy des lignes 4 et 6 et remplacez YourName par le nom de votre dossier de base.

Enregistrez-le comme un script, rendez-le exécutable, puis exécutez-le chaque fois que vous souhaitez que le papier peint soit mis à jour.

Je ne sais pas comment l'exécuter en toute sécurité au démarrage. Ajouter ceci à rc.local n'est pas sûr, d'après ce que j'ai compris de ceci .

S'il vous plaît commenter si quelque chose ne va pas.

    
réponse donnée nitishch 04.12.2013 - 09:31
la source
2

Voici mon outil pour télécharger les plus récents wallpapapers de Bing et le définir comme papier peint de votre bureau. Vous pouvez le consulter lien

    
réponse donnée Tuan Bach Van 05.04.2015 - 03:49
la source
0

J'ai cherché la réponse mais je n'ai pas trouvé, j'ai donc écrit un script pour définir le papier peint bing. Voici le script ...

#!/bin/sh

ping -q -c5 bing.com

if [ $? -eq 0 ]

then

wget "http://www.bing.com/HPImageArchive.aspx?format=rss&idx=0&n=1&mkt=en-US" -O  bing.txt
img_result=$(grep -o 'src="[^"]*"' bing.txt | grep -o '/.*.jpg')
wget "http://www.bing.com"$img_result
img_name=$(grep -o 'src="[^"]*"' bing.txt | grep -o '[^/]*.jpg')
pwdPath=$(pwd)
picPath="/home/YOUR USERNAME/Pictures/Wallpapers"
cp $pwdPath"/"$img_name $picPath
gsettings set org.gnome.desktop.background picture-uri "file://"$picPath"/"$img_name

sleep 10
rm $img_name
rm bing.txt 
fi
    
réponse donnée Himanshu Soni 29.07.2016 - 12:36
la source

Lire d'autres questions sur les étiquettes