Foros aprenderaprogramar.com
Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: Dixy en 13 de Noviembre 2021, 20:56
-
Hola. Lo que quiero hacer parece sencillo, pero no sé por dónde empezar, no sé si tengo que hacer una extensión de Chrome un script o alguna otra cosa.
A hacer:
En una página web ajena cuando en un campo el valor sea > 0 que se envíe un email avisándome. Eso es todo.
Busqué pero parece que no puedo enviar un email desde una extensión de Chrome, creo que será lo mismo en un script.
¿Con qué tengo que hacer esto?
Gracias.
-
Buenas, con lo que has indicado lo que se me ocurre es usar un script que descargue el contenido de la página, web, lo analice y te envíe un correo electrónico cuando se cumpla una determinada condición. Esto se puede hacer con diferentes lenguajes y de diferentes formas, una de ellas con PHP pero igual te puede valer otro lenguaje. En la entrega <<Extraer código fuente de página web con PHP. Leer archivos completos: file_get_contents y nl2br (CU00838B)>> del curso PHP https://aprenderaprogramar.com/index.php?option=com_content&view=category&id=70&Itemid=193 se habla algo de esto, aunque muy indirectamente. Tendrías que analizar y codificar el caso concreto. Salu2.
-
Gracias por responder.
Estoy tan perdida para empezar porque no he hecho nunca nada parecido ni una extensión de Chrome ni un script. De hecho cuando dije script pensé en algo como eso: [nobbc[https://www.youtube.com/watch?v=xFo8iTY9CJk&t=370s [/nobbc]
ya que es eso lo que encontré cuando buscaba información, pero no creo que te refieras a eso. Lo que llaman un script puede ser varias cosas. Perdona que te moleste, pero podrías decirme a lo que refieres tú con un script. Como dije no sé por donde empezar, dime algo tan básico como "bájate javascript y desde allí podrás hacer lo que quieres" o algo como eso. Ya que ahora ando perdida, muchas gracias.
-
Un script es un pequeño (o no tan pequeño) programa que se ejecuta con un fin determinado, por ejemplo analizar el contenido de una página web y determinar el número de veces que aparece una palabra determinada, o cualquier cosa que se te ocurra. Cómo empezar depende de tu nivel de programación de partida y de los lenguajes de programación que conozcas. ¿Qué lenguajes de programación manejas?
-
Me sé el C y de allí me es más fácil trabajar con lenguajes parecidos al C como el java.
¿Qué programa necesito para hacer ese script? O si no es un programa, me puedes redirigir a una página que me diga cómo lo hago, gracias.
-
Hay herramientas que te permiten monitorizar páginas web como visualping. io , sken. io, followthatpage .com, wachete. com, versionista. com y muchas otras. Si quieres crear un programa tú mismo, eso te llevará buscar el código adecuado o crearlo tú mismo. Un ejemplo de código Java con esta idea
import org.apache.commons.codec.digest.*;
import java.io.*;
import java.net.*;
import java.util.*;
/**
* User: jhe
*/
public class UrlUpdatedChecker {
static Map<String, String> checkSumDB = new HashMap<String, String>();
public static void main(String[] args) throws IOException, InterruptedException {
while (true) {
String url = "http://www.aprenderaprogramar.com";
// query last checksum from map
String lastChecksum = checkSumDB.get(url);
// get current checksum using static utility method
String currentChecksum = getChecksumForURL(url);
if (currentChecksum.equals(lastChecksum)) {
System.out.println("No ha habido cambios");
} else {
// persist this checksum to map
checkSumDB.put(url, currentChecksum);
System.out.println("Ha habido cambios...");
// Enviar un email: http://www.miweburl.com/displaypage.jsp?name=javamail.sql&id=13851
}
Thread.sleep(5000);
}
}
private static String getChecksumForURL(String spec) throws IOException {
URL u = new URL(spec);
HttpURLConnection huc = (HttpURLConnection) u.openConnection();
huc.setRequestMethod("GET");
huc.setDoOutput(true);
huc.connect();
return DigestUtils.sha256Hex(huc.getInputStream());
}
}
-
Ok, gracias, voy a revisarlo
-
Preguntando en otro foro me han dicho que se hace con web scraping, así que eso voy a hacer ahora. Por si a alguien le sirve les dejo aquí esta respuesta.