tradutor images imagenes español descargar buscador bing

images - bing tradutor



¿Hay alguna forma de obtener la foto del día de Bing? (18)

¿Hay alguna forma de que pueda obtener la imagen de fondo de Bing mediante programación?

La API de Bing no parece proporcionar esa funcionalidad, ¿tal vez hay otra manera?


JSON FORMAT of BING IMAGE

Encontré una forma de recuperar el formato JSON de la imagen de Bing del día

bing.com/HPImageArchive.aspx?format=js&idx=0&n=1

Nota

n= El número de imágenes que desea (puede usar números enteros ),
mkt= Su ubicación (ejemplo: en-US )

Aquí está la salida JSON se ve como

{ "images": [ { "startdate": "20141214", "fullstartdate": "201412141830", "enddate": "20141215", "url": "//az//hprichbg//rb//BlackButte_EN-IN7038391888_1920x1080.jpg", "urlbase": "//az//hprichbg//rb//BlackButte_EN-IN7038391888", "copyright": "Black Butte, seen from the Mount Jefferson Wilderness, Oregon, USA (/u00a9 Marc Adamus//Aurora Photos)", "copyrightlink": "http:////www.bing.com//search?q=Black+Butte&qs=n&form=hpcapt&mkt=en-in&pq=black+butte&sc=8-11&sp=-1&sk=&cvid=228ac7f125f94bbaafd4a4abd4f9a32d", "wp": true, "hsh": "94156ae1e2e1be49f9b739d2b7bff65c", "drk": 1, "top": 1, "bot": 1, "hs": [ ], "msg": [ { "title": "How does it feel/u2026", "link": "http:////www.bing.com//videos//search?q=Climbing+Black+Butte&FORM=pgbar1&mkt=en-in#view=detail&mid=58BDB2F2B9FCB85D597558BDB2F2B9FCB85D5975", "text": "To climb 1961.7 m?" }, { "title": "On top of the world", "link": "http:////www.bing.com//images//search?q=Pictures+From+the+Top+of+Mount+Everest&FORM=pgbar2&mkt=en-in", "text": "It''s mountaineer''s dream view" } ] } ], "tooltips": { "loading": "Loading...", "previous": "Previous", "next": "Next", "walle": "This image is not available to download as wallpaper.", "walls": "Download this image. Use of this image is restricted to wallpaper only." } }

usa la url de las images[]

y añádelo a ''http://bing.com''

aquí url es "url": "//az//hprichbg//rb//DayGecko_EN-US8730336235_1366x768.jpg"


Aquí hay una secuencia de comandos de Python simple para buscar la foto de Bing del día con solo requests y json :

import requests import json BING_URI_BASE = "http://www.bing.com" BING_WALLPAPER_PATH = "/HPImageArchive.aspx?format=js&idx=0&n=1&mkt=en-US" # open the Bing HPImageArchive URI and ask for a JSON response resp = requests.get(BING_URI_BASE + BING_WALLPAPER_PATH) if resp.status_code == 200: json_response = json.loads(resp.content) wallpaper_path = json_response[''images''][0][''url''] filename = wallpaper_path.split(''/'')[-1] wallpaper_uri = BING_URI_BASE + wallpaper_path # open the actual wallpaper uri, and write the response as an image on the filesystem response = requests.get(wallpaper_uri) if resp.status_code == 200: with open(filename, ''wb'') as f: f.write(response.content) else: raise ValueError("[ERROR] non-200 response from Bing server for ''{}''".format(wallpaper_uri)) else: raise ValueError("[ERROR] non-200 response from Bing server for ''{}''".format(BING_URI_BASE + BING_WALLPAPER_PATH))

Esto escribirá un archivo como TurtleTears_EN-US7942276596_1920x1080.jpg en el mismo directorio donde se ejecuta el script. Por supuesto, puede modificar un montón de cosas aquí, pero hace el trabajo con bastante facilidad.


Creo que la mejor manera es imitar la forma en que lo hacen ellos mismos a través de sus llamadas AJAX.

Llaman a esta URL y extraen la información a través de la deserialización XML.

XML: http://www.bing.com/HPImageArchive.aspx?format=xml&idx=0&n=1&mkt=en-US

JSON: http://www.bing.com/HPImageArchive.aspx?format=js&idx=0&n=1&mkt=en-US

RSS: http://www.bing.com/HPImageArchive.aspx?format=rss&idx=0&n=1&mkt=en-US

El atributo mkt obviamente se puede cambiar a una región diferente a''en-US '', pero también se puede excluir por completo si no se preocupa por una región específica.

Tenga en cuenta que el sufijo _1366x768.jpg que se agrega a los nombres de las imágenes parece ser modificable en diferentes resoluciones (como _1920x1080.jpg para HD completo y posiblemente otros).

Aquí hay un volcado de datos al 28/09/2013, en formato XML.

<?xml version="1.0" encoding="utf-8"?> <images> <image> <startdate>20130928</startdate> <fullstartdate>201309280000</fullstartdate> <enddate>20130929</enddate> <url>/az/hprichbg/rb/LakeTurkana_EN-US15976511099_1366x768.jpg</url> <urlBase>/az/hprichbg/rb/LakeTurkana_EN-US15976511099</urlBase> <copyright>Lava rock pools at the southern end of Lake Turkana, in Kenya (© Nigel Pavitt/Corbis)</copyright> <copyrightlink>http://www.bing.com/search?q=Lake+Turkana%2C+Kenya&amp;form=hpcapt</copyrightlink> <drk>1</drk> <top>1</top> <bot>1</bot> <hotspots> <hotspot> <desc>These are the southern reaches of a lake...</desc> <link>http://www.bing.com/maps/?v=2&amp;cp=2.794725~37.335197&amp;lvl=7&amp;dir=0&amp;sty=b&amp;q=Lake%20Turkana%2C%20Kenya&amp;form=hphot1</link> <query>That stretches for 180 miles, up into another country</query> <LocX>15</LocX> <LocY>33</LocY> </hotspot> <hotspot> <desc>This body of water was once called the Jade Sea.</desc> <link>http://www.bing.com/search?q=green+algae&amp;form=hphot2</link> <query>What gives the water here its sometimes vibrant hue?</query> <LocX>37</LocX> <LocY>42</LocY> </hotspot> <hotspot> <desc>One of the world''s most powerful predators lives here.</desc> <link>http://www.bing.com/videos/search?q=Underwater+Croc+Cams+National+Geographic&amp;FORM=hphot3#view=detail&amp;mid=D25E1909D3514A8732C5D25E1909D3514A8732C5</link> <query>See some rare underwater footage of the beast</query> <LocX>66</LocX> <LocY>33</LocY> </hotspot> <hotspot> <desc>Many fossils of ancient human ancestors have been uncovered in the surrounding area.</desc> <link>http://www.bing.com/search?q=Turkana+Boy&amp;form=hphot4</link> <query>One skeleton was so complete, paleoanthropologists gave him a name</query> <LocX>82</LocX> <LocY>41</LocY> </hotspot> </hotspots> <messages></messages> </image> <tooltips> <loadMessage> <message>Indlæser...</message> </loadMessage> <previousImage> <text>Forrige</text> </previousImage> <nextImage> <text>Næste</text> </nextImage> <play> <text>Afspil</text> </play> <pause> <text>Pause</text> </pause> </tooltips> </images>


Déjame decirte cómo empacar el fondo de pantalla diario del día con javascript y php,

Pruebe este código js:

<script> fetch(''https://techytricks97.000webhostapp.com/'') .then(response => response.text()) .then(text=>{document.body.style.background="url(''"+text+"'')";document.body.style.backgroundSize=''cover'';}); </script>

Este script establece una imagen diaria del día como fondo de su documento html (puede modificarlo según su uso).

Este enlace- https://techytricks97.000webhostapp.com devuelve el fondo de pantalla de bing del día, todos los días.

fetch() obtiene la url de la imagen del bing de hoy de https://techytricks97.000webhostapp.com y text=>{document.body.style.background="url(''"+text+"'')";document.body.style.backgroundSize=''cover'';} establece como fondo.

Nota: Microsoft no permite utilizar las imágenes de bing daily como fondo de su sitio, puede usarlo como fondo de pantalla de teléfono / escritorio, o en otras cosas mencionando derechos de autor.

Aquí está el código php que se utiliza en http://techytricks97.000webhostapp.com :

<?php header(''Access-Control-Allow-Origin: *''); ini_set(''display_errors'', 1); $reg=file_get_contents(''https://www.bing.com/HPImageArchive.aspx?format=js&idx=0&n=1&mkt=en-IN''); $reg=json_decode($reg); $meka=$reg->images[0]->url; echo(''http://www.bing.com''.$meka); ?>

Puede usar http://techytricks97.000webhostapp.com solamente o puede configurar su propio archivo php en su servidor.

Otra nota: no usé javascript solamente, porque la misma política de origen del navegador lo restringe, pero la búsqueda desde mi archivo php está permitida ya que he puesto el header(''Access-Control-Allow-Origin: *''); en mi código php. Pude haber usado otros proxies pero tienen mucho tráfico (mi sitio casi no recibe ningún clic en un día).

Si está utilizando cualquier otro idioma, solo tiene que leer este archivo ( http://techytricks97.000webhostapp.com )


Echa un vistazo a bing-desktop-wallpaper-changer en Github . El guión ha sido escrito en python y espero que encuentres tu respuesta allí.

#!/usr/bin/python #-*- coding: utf-8 -*- import os import urllib import urllib2 from bs4 import BeautifulSoup # Get BingXML file which contains the URL of the Bing Photo of the day # idx = Number days previous the present day. 0 means current day, 1 means yesterday, etc # n = Number of images predious the day given by idx # mkt denotes your location. e.g. en-US means United States. Put in your country code BingXML_URL = "http://www.bing.com/HPImageArchive.aspx? format=xml&idx=0&n=1&mkt=en-US" page = urllib2.urlopen(BingXML_URL) BingXML = BeautifulSoup(page, "lxml") # For extracting complete URL of the image Images = BingXML.find_all(''image'') ImageURL = "https://www.bing.com" + Images[0].url.text ImageName = Images[0].startdate.text+".jpg" urllib.urlretrieve(ImageURL, ImageName)

Eche un vistazo al proyecto Github para obtener un código detallado


En caso de que alguien esté buscando posibles implementaciones, escribí un pequeño programa de línea de comandos en C # para descargar, guardar y establecer mi fondo como la Imagen de Bing del día. Siéntete libre de modificarlo para tus necesidades personales. https://github.com/josueespinosa/BingBackground

using Microsoft.Win32; using Newtonsoft.Json; using System; using System.Drawing; using System.IO; using System.Net; using System.Runtime.InteropServices; using System.Windows.Forms; namespace BingBackground { class BingBackground { private static void Main(string[] args) { string urlBase = GetBackgroundUrlBase(); Image background = DownloadBackground(urlBase + GetResolutionExtension(urlBase)); SaveBackground(background); SetBackground(background, PicturePosition.Fill); } private static dynamic DownloadJson() { using (WebClient webClient = new WebClient()) { Console.WriteLine("Downloading JSON..."); string jsonString = webClient.DownloadString("https://www.bing.com/HPImageArchive.aspx?format=js&idx=0&n=1&mkt=en-US"); return JsonConvert.DeserializeObject<dynamic>(jsonString); } } private static string GetBackgroundUrlBase() { dynamic jsonObject = DownloadJson(); return "https://www.bing.com" + jsonObject.images[0].urlbase; } private static string GetBackgroundTitle() { dynamic jsonObject = DownloadJson(); string copyrightText = jsonObject.images[0].copyright; return copyrightText.Substring(0, copyrightText.IndexOf(" (")); } private static bool WebsiteExists(string url) { try { WebRequest request = WebRequest.Create(url); request.Method = "HEAD"; HttpWebResponse response = (HttpWebResponse)request.GetResponse(); return response.StatusCode == HttpStatusCode.OK; } catch { return false; } } private static string GetResolutionExtension(string url) { Rectangle resolution = Screen.PrimaryScreen.Bounds; string widthByHeight = resolution.Width + "x" + resolution.Height; string potentialExtension = "_" + widthByHeight + ".jpg"; if (WebsiteExists(url + potentialExtension)) { Console.WriteLine("Background for " + widthByHeight + " found."); return potentialExtension; } else { Console.WriteLine("No background for " + widthByHeight + " was found."); Console.WriteLine("Using 1920x1080 instead."); return "_1920x1080.jpg"; } } private static Image DownloadBackground(string url) { Console.WriteLine("Downloading background..."); WebRequest request = WebRequest.Create(url); WebResponse reponse = request.GetResponse(); Stream stream = reponse.GetResponseStream(); return Image.FromStream(stream); } private static string GetBackgroundImagePath() { string directory = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.MyPictures), "Bing Backgrounds", DateTime.Now.Year.ToString()); Directory.CreateDirectory(directory); return Path.Combine(directory, DateTime.Now.ToString("M-d-yyyy") + ".bmp"); } private static void SaveBackground(Image background) { Console.WriteLine("Saving background..."); background.Save(GetBackgroundImagePath(), System.Drawing.Imaging.ImageFormat.Bmp); } private enum PicturePosition { Tile, Center, Stretch, Fit, Fill } internal sealed class NativeMethods { [DllImport("user32.dll", CharSet = CharSet.Auto)] internal static extern int SystemParametersInfo(int uAction, int uParam, string lpvParam, int fuWinIni); } private static void SetBackground(Image background, PicturePosition style) { Console.WriteLine("Setting background..."); using (RegistryKey key = Registry.CurrentUser.OpenSubKey(Path.Combine("Control Panel", "Desktop"), true)) { switch (style) { case PicturePosition.Tile: key.SetValue("PicturePosition", "0"); key.SetValue("TileWallpaper", "1"); break; case PicturePosition.Center: key.SetValue("PicturePosition", "0"); key.SetValue("TileWallpaper", "0"); break; case PicturePosition.Stretch: key.SetValue("PicturePosition", "2"); key.SetValue("TileWallpaper", "0"); break; case PicturePosition.Fit: key.SetValue("PicturePosition", "6"); key.SetValue("TileWallpaper", "0"); break; case PicturePosition.Fill: key.SetValue("PicturePosition", "10"); key.SetValue("TileWallpaper", "0"); break; } } const int SetDesktopBackground = 20; const int UpdateIniFile = 1; const int SendWindowsIniChange = 2; NativeMethods.SystemParametersInfo(SetDesktopBackground, 0, GetBackgroundImagePath(), UpdateIniFile | SendWindowsIniChange); } } }



Este JavaScript responderá al ''qué hacer con la API'' al cambiar la imagen de fondo de un div al fondo de la imagen bing del día actual.

function PullBackground() { var ajaxRequest = new XMLHttpRequest(), background = ''''; ajaxRequest.open(''POST'', "http://www.bing.com/HPImageArchive.aspx?format=xml&idx=0&n=1&mkt=en-US", true); ajaxRequest.setRequestHeader("Connection", "close"); ajaxRequest.send(''''); ajaxRequest.onreadystatechange = function () { if (ajaxRequest.readyState == 4) { background = ajaxRequest.responseText; var res = background.split("<url>"); var res1 = res[1].split("</url>"); background = res1[0]; document.getElementById(''NameOfTheDivToChange'').style.backgroundImage = "url(''http://bing.com" + background + "'')" document.getElementById(''NameOfTheDivToChange'').style.backgroundSize = "100%"; } } }




Puede considerar obtener el archivo_contenido de esa url y buscar el archivo para la imagen. No estoy seguro de que sea la mejor manera, pero es una forma.


Puede usar el Bing Image Archive de istartedsomething.com . Es un archivo de imagen de Bing no oficial. Utiliza un punto final hecho en casa que es útil para recuperar imágenes:

GET /bingimages/getimage.php?id=<image_id>

id es una cadena que contiene la fecha en que se publicó la imagen y el país donde se publicó. id debe cumplir con el siguiente formato: YYYYMMDD-xx , donde:

  • YYYY es el año, escrito con cuatro dígitos.
  • MM es el mes, escrito con dos dígitos.
  • DD es el día, escrito con dos dígitos.
  • xx es el indicador de país. Bing Image Archive actualmente es compatible con los siguientes países:
    • au : Australia.
    • br : Brasil.
    • ca : Canadá.
    • cn : China.
    • de : Deutschland.
    • fr : Francia.
    • gb : Gran Bretaña.
    • jp : Japón.
    • nz : Nueva Zelanda.
    • uk : Reino Unido.
    • us : Estados Unidos de América.

Devuelve un objeto JSON útil si tiene alguna información o falso si no tiene nada.

Ejemplo 1: Recuperación de la imagen diaria de Bing publicada el 24 de mayo de 2014 en Nueva Zelanda

El ID de imagen es 20140524-nz porque la imagen solicitada se publicó el 24/05/2014 y se publicó en Nueva Zelanda, cuyo indicador de país es nz .

http://www.istartedsomething.com/bingimages/getimage.php?id=20140524-nz devuelve la siguiente pieza de JSON:

{ "url":"//az//hprichbg//rb//LakeMagadiFlamingos_ROW9792683076_1366x768.jpg", "region":"nz", "date":"2014-05-24", "copyright":"Flamingos take flight, Lake Magadi, Kenya (/u00a9 Bobby Haas//Getty Images)(Bing New Zealand)", "imageurl":"http:////www.istartedsomething.com//bingimages//cache//LakeMagadiFlamingos_ROW9792683076_1366x768.jpg", "hotspots":[], "video":[] }

Puede usar el campo imageurl o el campo url (ruta URL Bing) para obtener su imagen.

Ejemplo 2: Recuperación de la imagen diaria de Bing publicada el 12 de julio de 1998 en Francia

El ID de la imagen es 19980712-fr porque la imagen solicitada se publicó el 12/07/1998 y se publicó en Francia, cuyo indicador de país es fr .

http://www.istartedsomething.com/bingimages/getimage.php?id=19980712-fr devuelve false porque no hay Bing Daily Image para Francia el 12/07/1998 (Bing ni siquiera existía en este momento).


Puedes hacerlo usando python y wget en una máquina Linux:

import os # import the os package os.system("wget -O index.html http://www.bing.com") # download the bing index str1 = open(''index.html'', ''r'').read() # extract the file path using split str2=str1.split("g_img={url: /"")[1] str3=str2.split(".jpg")[0] os.system("wget -O daily_im.jpg http://www.bing.com" + str3 + ".jpg") # donwload the daily image

Descarga el fondo del bing diario en el directorio local bajo el nombre daily_im.jpg. Puede poner todo en un script.py y ejecutarlo programáticamente.


Simple PowerShell, coloque en una carpeta, cree una tarea diaria en el Programador de tareas de Windows, la secuencia de comandos guarda las imágenes en su carpeta de ejecución, luego en su Configuración de fondo de escritorio elija esa carpeta como fondo.

[xml]$doc = (New-Object System.Net.WebClient).DownloadString("https://www.bing.com/HPImageArchive.aspx?format=xml&idx=0&n=1&mkt=ru-RU") $url = $doc.images.image.url $url = "https://www.bing.com/" + $url -replace "_1366x768","_1920x1200" Write-Output $url $fileName = Split-Path $url -leaf $output = "$PSScriptRoot/$fileName" $start_time = Get-Date Invoke-WebRequest -Uri $url -OutFile $output Write-Output "Saved to: $output Time taken: $((Get-Date).Subtract($start_time).Seconds) second(s)"


También me gustan las imágenes de Bing, pero su aplicación está demasiado hinchada para descargar imágenes. Después de analizar la conexión con el violinista, escribí este código. El 1920x1200 viene con el logotipo de Bing incrustado, pero las resoluciones más bajas no lo tienen.

Puede hacer que Windows le muestre imágenes aleatorias de la carpeta de imágenes que configuró, de modo que al descargarlas a diario, le mostrará más imágenes aleatorias. Si conserva el "imageDir", necesita cambiar los permisos en esa carpeta o se bloqueará, no me molesté en detectar errores. Por último, desactive las líneas si desea configurar su fondo de pantalla a la imagen de hoy o puede crear una tarea para ejecutar el programa, digamos un minuto después del inicio de sesión.

using System; using System.IO; using System.Net; //using System.Runtime.InteropServices; namespace Bing { class Program { // [DllImport("user32.dll", CharSet = CharSet.Auto)] // private static extern Int32 SystemParametersInfo(UInt32 uiAction, UInt32 uiParam, String pvParam, UInt32 fWinIni); private static String imgDir = @"C:/Windows/Web/Wallpaper/Bing/"; static void Main(string[] args) { String imageFileName; if (!Directory.Exists(imgDir)) Directory.CreateDirectory(imgDir); for (byte i = 6; i >= 0; i--) { imageFileName = imgDir + DateTime.Today.AddDays(-i).ToString("yyy-MM-dd") + ".jpg"; if (!File.Exists(imageFileName)) { string response = null; Connect(ref response, i); ProcessXml(ref response); using (WebClient client = new WebClient()) client.DownloadFile("http://www.bing.com" + response + "_1920x1200.jpg", imageFileName); } } //SystemParametersInfo(20, 0, imageFileName, 0x01 | 0x02); } private static void Connect(ref string res, byte i) { HttpWebRequest webrequest = (HttpWebRequest)WebRequest.Create("http://www.bing.com/hpimagearchive.aspx?format=xml&idx=" + i + "&n=1&mbl=1&mkt=en-ww"); webrequest.KeepAlive = false; webrequest.Method = "GET"; using (HttpWebResponse webresponse = (HttpWebResponse)webrequest.GetResponse()) using (StreamReader loResponseStream = new StreamReader(webresponse.GetResponseStream())) res = loResponseStream.ReadToEnd(); } private static void ProcessXml(ref string xmlString) { using (System.Xml.XmlReader reader = System.Xml.XmlReader.Create(new StringReader(xmlString))) { reader.ReadToFollowing("urlBase"); xmlString = reader.ReadElementContentAsString(); } } } }


Un trazador de líneas PowerShell (3.0 o superior)

irm es un alias para Invoke-RestMethod

irm "bing.com$((irm "bing.com/HPImageArchive.aspx?format=js&mkt=en-IN&n=1").images[0].url)" -OutFile bing.jpg


Usando la URL de @Siv, aquí hay un ejemplo de JavaScript que actualiza <div class="bgimg" id="background">

function GetImageURL(ans) { var suffix = ans.images[0].url document.getElementById("background").style.backgroundImage = ''url("'' + ''http://bing.com/'' + suffix + ''"'' } function GetJSON() { var xmlhttp = new XMLHttpRequest() var url = "https://www.bing.com/HPImageArchive.aspx?format=js&idx=0&n=1" xmlhttp.onreadystatechange = function () { if (this.readyState == 4 && this.status == 200) { var ans = JSON.parse(this.responseText); GetImageURL(ans); } }; xmlhttp.open("GET", url, true); xmlhttp.send(); } window.onload = function () { GetJSON() }

El CSS para esta clase es:

.bgimg { height: 100%; position: relative; opacity: 0.95; background-position: center; background-repeat: no-repeat; background-size: cover; }