Un programa para hacer que mi computadora haga una determinada cosa en un sitio web cada 30 minutos durante dos días

Así que quiero que mi computadora haga algo en un sitio web cada 30 minutos, durante 2 días seguidos. Quiero que mi computadora publique algo en un sitio y el título debe mostrar la hora. ¿Alguien conoce un programa que pueda hacer esto?

Yo uso Windows.

Los desarrolladores usarían Selenium . ¿Puede dar un poco más de información sobre el conocimiento del usuario (es decir, si lo entiendo bien). ¿La programación está bien o necesita una interfaz de usuario simple?

Respuestas (2)

Estas son las opciones que puedo sugerir (sin ningún orden en particular):

  1. selenio _ Esta es una herramienta de automatización para navegadores web. Los desarrolladores suelen utilizarlo para ejecutar secuencias de comandos de prueba de sitios web, pero se puede utilizar para cualquier propósito que requiera una acción repetible en un sitio web. escribiría un script diciéndole que "haga clic en esto, ingrese eso, etc", y podría ejecutarlo repetidamente. Funciona con todos los principales navegadores. Todavía necesitaría una herramienta separada para configurarlo para que se ejecute regularmente.

  2. Sahi . Similar a Selenio. Podría decirse que es más fácil de usar, pero no tan ampliamente compatible. Sin embargo, todavía funciona en todos los principales navegadores. Al igual que con Selenium, aún necesitaría una herramienta separada para programar su ejecución.

  3. FantasmaJS . Este es un poco diferente a los demás. Phantom es un "navegador web sin cabeza"; es decir, es un navegador web totalmente funcional, pero sin interfaz de usuario. Puede usarlo para navegar por las páginas, pero toda la interacción con él se realiza a través de secuencias de comandos, tanto para decirle qué hacer como para inspeccionar las páginas web resultantes. Al igual que con las otras dos herramientas anteriores, se usa con frecuencia para escribir scripts de prueba para sitios web. Es considerablemente más rápido en la ejecución de sus scripts que Selenium o Sahi debido a que no tiene la sobrecarga de tener que cargar un navegador separado y no tener que mostrar la ventana del navegador en la pantalla. Sin embargo, la curva de aprendizaje es considerablemente más pronunciada, por lo que le costará más esfuerzo ponerla en funcionamiento. Al igual que con los demás, necesitará una herramienta separada para automatizarlo y ejecutarlo regularmente.

  4. WGet . Dependiendo de sus necesidades, es posible que no necesite nada de la complejidad de las herramientas enumeradas anteriormente. WGet es una herramienta muy sencilla que no hace más que realizar una petición web. Si su necesidad de automatización es simple, por ejemplo, simplemente cargue una página determinada para activar un evento en su sitio una vez al día, entonces puede lograrlo simplemente cargando la página; no necesariamente necesita tener un navegador que haga algo con la página una vez que se carga. En este caso, WGet puede ser una mejor opción que cualquiera de los otros, simplemente porque es muy simple. Nuevamente, necesitará algo más para decirle que se ejecute regularmente.

Para todo lo anterior, una vez que haya escrito la secuencia de comandos, puede lograr que se ejecute regularmente utilizando el Programador de tareas de Windows, que está integrado en Windows.

Una última cosa que diría: si la acción que realiza regularmente es una acción en su propio sitio web, es mejor que la realice el propio servidor web. En este caso, suponiendo que su servidor ejecuta Linux, necesitaría usar un trabajo cron para realizar la automatización, pero no necesitaría ninguna de las herramientas anteriores, ya que su trabajo cron podría simplemente ejecutar el código en su sitio directamente. .

Como dijiste "sitio web", puedes usar tu navegador para hacer el trabajo. Aunque también se puede usar Selenium.

Usaré el navegador.

Descargo de responsabilidad : se requiere conocimiento intermedio de Javascript para lograr esto.

Aquí estos son tus mejores amigos, explótalos: setInterval, iframes, MouseEvents,KeyboardEvents

Vaya al sitio web de destino, abra la consola del navegador e ingrese el script (más sobre eso más adelante).

La ventana/pestaña principal del navegador mantendrá su secuencia de comandos en ejecución, los iframes actuarán como un espacio aislado de segunda capa para su secuencia de comandos, ya que los clics de activación en la página principal podrían redirigir a alguna otra página, lo que detendría aún más su secuencia de comandos.

Y luego use selectores normales y MouseEvents/KeyboardEvents para lograr lo que desea.

Ejemplo:

Este script de ejemplo votará a favor la primera respuesta publicada en el hilo más reciente en reddit.com/r/webdev

Advertencia: debes iniciar sesión en reddit

1. Abra su navegador (Probado en Chrome)

2. Vaya a reddit.com/r/webdev

3. Abra la consola porCTRL + SHIFT + J

4. Pegue el siguiente código y presione enter (se explica más adelante)

Puede salir ahora, solo asegúrese de que el navegador siga funcionando.

¿¿Lo que está sucediendo??

Los principales ayudantes aquí son setIntervaly iframes. El primero lo mantiene en bucle y el segundo se usa para ejecutar scripts y la ventana en sí se usa para mantener el entorno.

Establecer la hora de finalización del guión

var endLoopAt = new Date('July 08, 2016 08:24:00');

Cree un entorno de espacio aislado, la ventana principal se usará para mantener la secuencia de comandos en ejecución

var sandBoxedIframe = document.createElement("iframe");
sandBoxedIframe.onload = checkAndUpvote;
document.body.appendChild(sandBoxedIframe);

Se usa para verificar si el nuevo enlace más reciente es el mismo que se verificó durante la última ejecución

var lastUpdatedFirstPostLink = "";

El resto del script usa selectores de elementos (puede usar "inspeccionar elemento" para encontrar el suyo) y envía eventos en ellos.