[..] Acceder à un lien une fois par jour

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
BABYduNET
Niveau 1
Niveau 1
Messages : 7
Enregistré le : ven. 22 juil. 2011 16:20
Status : Hors ligne

[..] Acceder à un lien une fois par jour

#1

Message par BABYduNET »

Salut à tous,

Je voudrais si c'est possible avoir un script qui permet d’accéder une fois par jour à un lien genre: http://www.aaaaa---aaaa.com/active.php

J'ai fais le tour des tutos mais je ne trouve pas ce qu'il faut pour faire une telle chose, je c que c'est très simple mais je ne suis pas du fort en programmation.

Merci pour votre aide et à très bientôt.
Modifié en dernier par BABYduNET le ven. 22 juil. 2011 18:22, modifié 2 fois.
Avatar du membre
floriande26
Niveau 3
Niveau 3
Messages : 49
Enregistré le : jeu. 03 mars 2011 12:25
Status : Hors ligne

Re: [..]Acceder à un lien une fois par jour

#2

Message par floriande26 »

Oui c'est possible mais tu veux juset qu'il se connecte , ou qu'il affiche la page du lien ,....
Image
Avatar du membre
TT22
Membre émérite
Membre émérite
Messages : 1566
Enregistré le : lun. 18 avr. 2011 15:21
Localisation : La Quatrième Dimension
Status : Hors ligne

Re: [..]Acceder à un lien une fois par jour

#3

Message par TT22 »

Tien, voila ton script :

Code : Tout sélectionner

$ini = IniRead(@ScriptDir&"\Jour.ini","Date",@MDAY&"-"&@MON&"-"&@YEAR,"Not Found")

If $ini = "Not Found" Then
    ShellExecute("http://www.google.fr/")
    IniWrite(@ScriptDir&"\Jour.ini","Date",@MDAY&"-"&@MON&"-"&@YEAR,"Ok")
EndIf

Exit
Les jours où tu t'est connecté sont stocké dans le fichier Jour.ini

Edit : Tu peux remplacer http://www.google.fr/ par l'URL que tu veux.
Modifié en dernier par TT22 le ven. 22 juil. 2011 18:15, modifié 1 fois.
Cordialement,
TT22
BABYduNET
Niveau 1
Niveau 1
Messages : 7
Enregistré le : ven. 22 juil. 2011 16:20
Status : Hors ligne

Re: [..]Acceder à un lien une fois par jour

#4

Message par BABYduNET »

floriande26 a écrit :Oui c'est possible mais tu veux juset qu'il se connecte , ou qu'il affiche la page du lien ,....
Salut,

Je veux juste qu'il ce connecte.

Merci.
BABYduNET
Niveau 1
Niveau 1
Messages : 7
Enregistré le : ven. 22 juil. 2011 16:20
Status : Hors ligne

Re: [..]Acceder à un lien une fois par jour

#5

Message par BABYduNET »

Salut et merci T22

Je vais voir cela, il ne le fait pas automatiquement, il faut cliquer dessus chaque jour, c'est sa non ?
je voudrais bien que ce soi automatique.

Encore merci à toi T22 et merci à tous.

Une dernière chose je voudrais si c'est possible qu'il le fait sans afficher la page.

PS: Désolé pour le lien que j'ai posté je pensais qu'il n’existe pas je l'avais écris par hasard :lol: Je viens de le modifier.

encore merci à tous.
Avatar du membre
sablier94
Niveau 4
Niveau 4
Messages : 87
Enregistré le : lun. 20 sept. 2010 10:18
Localisation : Suisse
Status : Hors ligne

Re: [..] Acceder à un lien une fois par jour

#6

Message par sablier94 »

Hello,

J'ai modifié le code de TT22 en fonction de tes besoins (Il se lance à chaque démarrage et se lance en mode caché).
J'ai également commenté le code :

Code : Tout sélectionner

$NomDuProgramme = "TonProgrammeAutoit" ;A remplacer par le nom de ton programme

If RegRead("HKLM\Microsoft\Windows\CurrentVersion\Run", $NomDuProgramme) <> @ScriptFullPath Then RegWrite("HKLM\Microsoft\Windows\CurrentVersion\Run", $NomDuProgramme, "REG_SZ", @ScriptFullPath) ;On insère une clé de registre pour que le programme se lance à chaque démarrage.

$ini = IniRead(@ScriptDir&"\Jour.ini","Date",@MDAY&"-"&@MON&"-"&@YEAR,"Not Found") ;On lit dans la date du jour dans le fichier ini

If $ini = "Not Found" Then ;Si le lien n'a pas encore été visié aujourd'hui
    ShellExecute("http://www.google.fr/", "", "", "", @SW_HIDE) ;On exécute la page en mode caché
    IniWrite(@ScriptDir&"\Jour.ini","Date",@MDAY&"-"&@MON&"-"&@YEAR,"Ok") ;On écrit dans le fichier ini la date du jour
EndIf

Exit ;On ferme le programme

;~ Pour que le programme ne démarre plus à chaque démarrage : RegDelete($RegistryPath & "\Microsoft\Windows\CurrentVersion\Run", $NomDuProgramme)
A+
BABYduNET
Niveau 1
Niveau 1
Messages : 7
Enregistré le : ven. 22 juil. 2011 16:20
Status : Hors ligne

Re: [..] Acceder à un lien une fois par jour

#7

Message par BABYduNET »

sablier94 a écrit :Hello,

J'ai modifié le code de TT22 en fonction de tes besoins (Il se lance à chaque démarrage et se lance en mode caché).
J'ai également commenté le code :

Code : Tout sélectionner

$NomDuProgramme = "TonProgrammeAutoit" ;A remplacer par le nom de ton programme

If RegRead("HKLM\Microsoft\Windows\CurrentVersion\Run", $NomDuProgramme) <> @ScriptFullPath Then RegWrite("HKLM\Microsoft\Windows\CurrentVersion\Run", $NomDuProgramme, "REG_SZ", @ScriptFullPath) ;On insère une clé de registre pour que le programme se lance à chaque démarrage.

$ini = IniRead(@ScriptDir&"\Jour.ini","Date",@MDAY&"-"&@MON&"-"&@YEAR,"Not Found") ;On lit dans la date du jour dans le fichier ini

If $ini = "Not Found" Then ;Si le lien n'a pas encore été visié aujourd'hui
    ShellExecute("http://www.google.fr/", "", "", "", @SW_HIDE) ;On exécute la page en mode caché
    IniWrite(@ScriptDir&"\Jour.ini","Date",@MDAY&"-"&@MON&"-"&@YEAR,"Ok") ;On écrit dans le fichier ini la date du jour
EndIf

Exit ;On ferme le programme

;~ Pour que le programme ne démarre plus à chaque démarrage : RegDelete($RegistryPath & "\Microsoft\Windows\CurrentVersion\Run", $NomDuProgramme)
A+
Salut sablier94,

Merci à toi pour cette modification, mais pour le lancement a chaque démarrage ne m’arrange pas vraiment car mes PCs sont tout le temps allumé :| mais cela servira surement à l'un des membres ou visiteur de ce magnifique forum, si vous pouvez bien le faire pour qu'il ce relance chaque jour a une heure précise (n'importe la quelle) ça sera parfait "sans vouloir vous commandé bien sûr"

Encore merci à tous et à bientôt.

@++
Avatar du membre
PandiPanda
Membre émérite
Membre émérite
Messages : 656
Enregistré le : mar. 19 juil. 2011 14:03
Localisation : Bruxelles
Status : Hors ligne

Re: [..] Acceder à un lien une fois par jour

#8

Message par PandiPanda »

Si vous pouvez laisser tourner le script 24h/24 7j/7
Il est toujours possible de faire une boucle infinie ...
► Afficher le texte
ceci couplé a dit plus haut, pour le lancement de programme au demarage de l'ordinateur, ca devrai vous satisfaire.
La seule moralité qui tienne dans un monde cruel est la chance. Impartiale. Équitable. Vraie
BABYduNET
Niveau 1
Niveau 1
Messages : 7
Enregistré le : ven. 22 juil. 2011 16:20
Status : Hors ligne

Re: [..] Acceder à un lien une fois par jour

#9

Message par BABYduNET »

PandiPanda a écrit :Si vous pouvez laisser tourner le script 24h/24 7j/7
Il est toujours possible de faire une boucle infinie ...
► Afficher le texte
ceci couplé a dit plus haut, pour le lancement de programme au demarage de l'ordinateur, ca devrai vous satisfaire.
salut à tous,

c'est encore mieux, je viens de testé le tout mais le problème est qu'après l'heure Global $heure=20 le script ouvre la page environ chaque minute :lol: je ne c vraiment pas pourquoi.

pour information j'ai compilé le tout en *.EXE

merci à vous tous.

@++
Avatar du membre
sablier94
Niveau 4
Niveau 4
Messages : 87
Enregistré le : lun. 20 sept. 2010 10:18
Localisation : Suisse
Status : Hors ligne

Re: [..] Acceder à un lien une fois par jour

#10

Message par sablier94 »

C'est normal pour son code.

J'ai encore modifié l'autre et ça devrait marcher :

Code : Tout sélectionner

$NomDuProgramme = "TonProgrammeAutoit" ;A remplacer par le nom de ton programme

If RegRead("HKLM\Microsoft\Windows\CurrentVersion\Run", $NomDuProgramme) <> @ScriptFullPath Then RegWrite("HKLM\Microsoft\Windows\CurrentVersion\Run", $NomDuProgramme, "REG_SZ", @ScriptFullPath) ;On insère une clé de registre pour que le programme se lance à chaque démarrage.

While 1
    $ini = IniRead(@ScriptDir&"\Jour.ini","Date",@MDAY&"-"&@MON&"-"&@YEAR,"Not Found") ;On lit dans la date du jour dans le fichier ini

    If $ini = "Not Found" Then ;Si le lien n'a pas encore été visié aujourd'hui
        ShellExecute("http://www.google.fr/", "", "", "", @SW_HIDE) ;On exécute la page en mode caché
        IniWrite(@ScriptDir&"\Jour.ini","Date",@MDAY&"-"&@MON&"-"&@YEAR,"Ok") ;On écrit dans le fichier ini la date du jour
    EndIf

    Sleep(1000*60*60*24) ;On attend 1 jour complet !
WEnd

;~ Pour que le programme ne démarre plus à chaque démarrage : RegDelete($RegistryPath & "\Microsoft\Windows\CurrentVersion\Run", $NomDuProgramme)
Avatar du membre
TT22
Membre émérite
Membre émérite
Messages : 1566
Enregistré le : lun. 18 avr. 2011 15:21
Localisation : La Quatrième Dimension
Status : Hors ligne

Re: [..] Acceder à un lien une fois par jour

#11

Message par TT22 »

Sinon, tu met mon script dans une boucle et il se connectera touts les jours à 00h00 :wink:
Cordialement,
TT22
BABYduNET
Niveau 1
Niveau 1
Messages : 7
Enregistré le : ven. 22 juil. 2011 16:20
Status : Hors ligne

Re: [..] Acceder à un lien une fois par jour

#12

Message par BABYduNET »

sablier94 a écrit :C'est normal pour son code.

J'ai encore modifié l'autre et ça devrait marcher :

Code : Tout sélectionner

$NomDuProgramme = "TonProgrammeAutoit" ;A remplacer par le nom de ton programme

If RegRead("HKLM\Microsoft\Windows\CurrentVersion\Run", $NomDuProgramme) <> @ScriptFullPath Then RegWrite("HKLM\Microsoft\Windows\CurrentVersion\Run", $NomDuProgramme, "REG_SZ", @ScriptFullPath) ;On insère une clé de registre pour que le programme se lance à chaque démarrage.

While 1
    $ini = IniRead(@ScriptDir&"\Jour.ini","Date",@MDAY&"-"&@MON&"-"&@YEAR,"Not Found") ;On lit dans la date du jour dans le fichier ini

    If $ini = "Not Found" Then ;Si le lien n'a pas encore été visié aujourd'hui
        ShellExecute("http://www.google.fr/", "", "", "", @SW_HIDE) ;On exécute la page en mode caché
        IniWrite(@ScriptDir&"\Jour.ini","Date",@MDAY&"-"&@MON&"-"&@YEAR,"Ok") ;On écrit dans le fichier ini la date du jour
    EndIf

    Sleep(1000*60*60*24) ;On attend 1 jour complet !
WEnd

;~ Pour que le programme ne démarre plus à chaque démarrage : RegDelete($RegistryPath & "\Microsoft\Windows\CurrentVersion\Run", $NomDuProgramme)

salut,

merci a toi pour cette perfection.

Il reste juste un truc que je n'ai pas compris :
$NomDuProgramme = "TonProgrammeAutoit" ;A remplacer par le nom de ton programme

Je dois mettre quoi sur "TonProgrammeAutoit" comme le script = le programme, je ne c pas quoi mettre, ou bien je dois mettre le nom du fichier *.EXE genre "01.exe" ou bien le nom du programme et son dossier ?

Merci.
Avatar du membre
TT22
Membre émérite
Membre émérite
Messages : 1566
Enregistré le : lun. 18 avr. 2011 15:21
Localisation : La Quatrième Dimension
Status : Hors ligne

Re: [..] Acceder à un lien une fois par jour

#13

Message par TT22 »

Ça veut dire que si tu compile ton programme sous le nom test.exe , dans ta variable il faut mettre test.exe :wink:
Cordialement,
TT22
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Acceder à un lien une fois par jour

#14

Message par mikell »

sablier94 a écrit :

Code : Tout sélectionner

Sleep(1000*60*60*24) ;On attend 1 jour complet !
Avec ça, à quoi il sert exactement le ini ? :mrgreen:
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Avatar du membre
TT22
Membre émérite
Membre émérite
Messages : 1566
Enregistré le : lun. 18 avr. 2011 15:21
Localisation : La Quatrième Dimension
Status : Hors ligne

Re: [..] Acceder à un lien une fois par jour

#15

Message par TT22 »

Ouai, mikell à raison.
Cordialement,
TT22
Avatar du membre
sablier94
Niveau 4
Niveau 4
Messages : 87
Enregistré le : lun. 20 sept. 2010 10:18
Localisation : Suisse
Status : Hors ligne

Re: [..] Acceder à un lien une fois par jour

#16

Message par sablier94 »

Bah si on ferme le script et qu'on le rouvre, on va voir dans le fichier ini si le lien a déjà été exécuté.

J'ai mis qu'il se rouvre à chaque démarrage au cas où tu l'éteindrais quand même.

Et si on le met toujours à une heure fixe, si l'ordinateur est éteint, c'est foutu.

Pour $NomDuProgramme tu peux mettre le nom de ton programme (genre "test" ou "MonApp") mais ça ne change rien, c'est juste pour le registre.

++
Avatar du membre
zeshrek
Niveau 10
Niveau 10
Messages : 984
Enregistré le : mer. 17 nov. 2010 09:31
Localisation : Sur ma chaise
Status : Hors ligne

Re: [..] Acceder à un lien une fois par jour

#17

Message par zeshrek »

TT22 a écrit :Ça veut dire que si tu compile ton programme sous le nom test.exe , dans ta variable il faut mettre test.exe :wink:
???
Pourquoi utiliser cette ligne

Code : Tout sélectionner

$NomDuProgramme = "TonProgrammeAutoit" ;A remplacer par le nom de ton programme
Il y a la macro @ScriptName !!!
Si vis pacem para bellum
Avatar du membre
Iste
Niveau 11
Niveau 11
Messages : 1870
Enregistré le : jeu. 04 déc. 2008 14:21
Localisation : 76
Status : Hors ligne

Re: [..] Acceder à un lien une fois par jour

#18

Message par Iste »

Je rajouterez que "lancer un script tout les jour" n'est pas du domaine d'autoit, mais de l'os.

Windows possède un planificateur de tâches que je vous recommande fortement d'utiliser.
Signez ici
Avatar du membre
Strofe
Niveau 5
Niveau 5
Messages : 182
Enregistré le : ven. 26 sept. 2008 23:16
Localisation : Picardie, Oise, Beauvais
Status : Hors ligne

Re: [..] Acceder à un lien une fois par jour

#19

Message par Strofe »

Bonjour

Et pourquoi pas une tâche planifiée ??

Au lieu de surcharger le système avec un programme qui se déclenche une fois par jour !!!
Y a pas de problème, y a que des solutions. Reste à les trouver.
servabat
Niveau 4
Niveau 4
Messages : 69
Enregistré le : sam. 02 avr. 2011 16:26
Status : Hors ligne

Re: [..] Acceder à un lien une fois par jour

#20

Message par servabat »

Salut,

tu pourrais faire quelque chose comme ça (avec les taches planifiées - une grande partie est inutiles (pour les dates), je l'ai copié rapidement d'un autre de mes scripts) :

Code : Tout sélectionner

#include <Date.au3>
#include <http.au3>
#include <array.au3>

;------------| Date pour AT et SHTASKS |------------;
$day = StringLeft(_NowDate(), 2)
$month = StringTrimLeft(StringLeft(_NowDate(),5), 3)
$year = StringRight(_NowDate(), 4)
Global $aDateSH[3] = [$day, $month, $year]
Global $aMonth[12] = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
If _DateIsLeapYear($year) = 1 Then
    $aMonth[1] = 29
EndIf
Select
    Case ($day = $aMonth[$month - 1] AND $month <> 12)
        $aDateSH[0] = 1
        $aDateSH[1] = $month + 1
    Case ($day = $aMonth[$month - 1] AND $month = 12)
        $aDateSH[0] = 1
        $aDateSH[1] = 1
        $aDateSH[2] = $year + 1
    Case $day < $aMonth[$month - 1]
        $aDateSH[0] = $day + 1
    Case Else
        MsgBox(16, "Erreur", "Erreur dans la définition des jours")
        $aDateSH[0] = $day + 1
EndSelect
;----------| Fin Date pour AT et SHTASKS |----------;

If (@OSVersion = "WIN_XP" OR @OSVersion = "WIN_NT4") Then
    ShellExecute("at.exe", @ScriptFullPath&" /next:"&$aDateSH[0]")
EndIf
If (@OSVersion = "WIN_VISTA" OR @OSVersion = "WIN_7") Then
    ShellExecute("shtasks.exe", '/create /tn "ConnectScript" /tr "'&@ScriptFullPath&'" /sc DAILY')
EndIf

$host = "www.site.com"
$page = "/active.php"

$socket = _HTTPConnect($host)
_HTTPGet($host, $page, $socket)
_HTTPClose($socket)

Exit
Répondre