Surveiller un site web d'offre d'emploi

Surveiller un site web d'offre d'emploi - HTML/CSS - Programmation

Marsh Posté le 07-08-2004 à 20:21:24    


:hello: Hello @ tous,
 
 
Ce que je cherche à faire, c'est d'etre prévenu par email à chaque fois qu'une nouvelle offre d'emploi est sur cette page là:
 
 [:k-surf] http://wadme.unige.ch:3149/pls/opb [...] of?grpnb=9
 
Donc, j'aurais voulu s'avoir si il étais possible de creer une page web qui checkerais toute les 5min si une nouvelle offre d'emploi est disponible, mais ce qui rend la tâche plus dur, c'est que ce site n'a pas l'air d'etre fait en php...  :(  
donc difficle de récuperer une variable "N° de l'offre"
 
en effet je pensais, récuperer et stocker ce numéro d'offre dans un tableau, à chaque fois la page web extérieur check cette page d'pffre d'emploi, elle compare les numéros en parcourant le tableau, si ce numéro n'existe pas, il le rajoute et me préviens par mail...
 
je sais pas si vous avez compris ou je veux en venir...
 
 
Donc je voulais savoir si ce projet est possible, si oui, comment le réaliser ?  :??:  
 
Merci d'avance pour vos futurs explications, juste je vous demanderais de me détails un peu vos post, paske je suis un ptit peu un newb de l'html&php :jap:
 
 :jap:  
 

Reply

Marsh Posté le 07-08-2004 à 20:21:24   

Reply

Marsh Posté le 07-08-2004 à 20:41:26    

perso, je passerais pas par une page php/html ; j'essayerais plutôt de télécharger la page à intervalle régulier (wget, lynx -dump etc)et ensuite de regarder si il y a plusieurs fois qui est censé être en 1 exemplaire pour chaque offre (date/horaire/..., ce genre de truc) ; ensuite, tu trouves un moyen de t'alerter (mail, voire génération d'une page web simpliste à coup de echo)


Message édité par Mjules le 07-08-2004 à 20:42:18

---------------
Celui qui pose une question est idiot 5 minutes. Celui qui n'en pose pas le reste toute sa vie. |  Membre du grand complot pharmaceutico-médico-scientifico-judéo-maçonnique.
Reply

Marsh Posté le 08-08-2004 à 06:03:24    


merci de t'être penché sur mon cas (désépéré lol) :jap:
 
mais ta solution n'impliquera pas d'avoir le pc allumer constament ? :??:
 
les offres s'inscrivent directement sur cette page, elle ne s'affiche pas style pour une offre/une page web unique... :(
 
(exemple: [:k-surf] http://wadme.unige.ch:3149/pls/opb [...] of?grpnb=1 )
 
une autre petite idée me vienderait entête, est-ce qu'un script peut-il checker à l'interieur d'un code source HTML, pour essayer de récuperer le numéro de l'offre et de la stocker dans un tableau ? m'enfin ce qui sera un peu chiant, c'est comment différencer un numéro d'offre que d'un numéro quelqonque...
 
 

Reply

Marsh Posté le 08-08-2004 à 12:21:32    

K-Surf a écrit :

merci de t'être penché sur mon cas (désépéré lol) :jap:
 
mais ta solution n'impliquera pas d'avoir le pc allumer constament ? :??:
si
les offres s'inscrivent directement sur cette page, elle ne s'affiche pas style pour une offre/une page web unique... :(
 
(exemple: [:k-surf] http://wadme.unige.ch:3149/pls/opb [...] of?grpnb=1 )
 
une autre petite idée me vienderait entête, est-ce qu'un script peut-il checker à l'interieur d'un code source HTML, pour essayer de récuperer le numéro de l'offre et de la stocker dans un tableau ? m'enfin ce qui sera un peu chiant, c'est comment différencer un numéro d'offre que d'un numéro quelqonque...


c'est justement ce que je te proposais ; inspecter le code HTML pour détecter si il y a plusieurs occurences du même mot (et donc plusieurs offres)
 
pour le coup du numéro d'offre, ça risque d'être plus chaud je pense.
 
Mais j'y pense ; le plus simple ne serait il pas de mettre un rafraichissement automatique sur cette page et de la laisser ouverte constamment ? voire de la mettre en page de démarrage ?
 
avec un navigateur gérant les onglets (mozilla, firefox, opera...), c'est très facile de laisser l'onglet ouvert dans un coin avec un refresh auto sur la page.


---------------
Celui qui pose une question est idiot 5 minutes. Celui qui n'en pose pas le reste toute sa vie. |  Membre du grand complot pharmaceutico-médico-scientifico-judéo-maçonnique.
Reply

Marsh Posté le 08-08-2004 à 13:39:07    

Mjules a écrit :


 
avec un navigateur gérant les onglets (mozilla, firefox, opera...), c'est très facile de laisser l'onglet ouvert dans un coin avec un refresh auto sur la page.


 
c'est que je fais actuellement,
 
mais je suis pas tout le temps devant mon pc, et je cherche une solution qui est indépendante de mon pc(ben oui, je vouderais bien éteindre mon pc la journée quand je suis pas là), d'où l'idée de faire une page web extérieur sur un serveur tel que free...
 
et il fauderait que cette page web externe m'avertisse par mail dès qu'une nouvelle offre est disponible, pourquoi cette envoie de mail ? comme ça je reçois instantanément un SMS sur mon mobile...
 

Reply

Marsh Posté le 09-08-2004 à 10:05:46    

[modereponseCon]
tu fais une page HTML qui recupère la page que tu as indiqué plus haut
et qui fait tous les traitements que tu veux (j'ai la flème de le faire là)
 
et tu t'ouvre un compte sur webcron.org
tu défini tous les combien de temps tu veux que ta page soit éxécutée (faut qu'elle soit en PHP ou ASP evidemment), et tu fais il te fait le boulot a ta place.
 
webcron ne fait que appeler ta page tous les X temps indiqués.
 
[/modereponseCon]

Reply

Marsh Posté le 09-08-2004 à 15:38:38    

gatsusat a écrit :


 
[modereponseCon]
tu fais une page HTML qui recupère la page que tu as indiqué plus haut
et qui fait tous les traitements que tu veux (j'ai la flème de le faire là)
 
[/modereponseCon]


 
Merci concernant Webcron.org  :jap:  
 
quand tu auras le temps -un des ces quatres- pourrait-tu détailler la façon d'où on pourrait coder cette page HTML qui permettra de récup le n° de l'offre, etc. etc. Merci encore  :jap:  
 
 
 [:atreyu]  
 

Reply

Marsh Posté le 11-08-2004 à 17:36:33    

Well, je me suis amusé à faire un truc en php qui devrait marcher
 
Il te faut pour ça
 
- avoir un compte avec du php (sinon adieu webcron je pense)
- utiliser webcron
- créer un fichier texte (appelé regexp2.txt dans le script ci-dessous) que tu mettra dans le même répertoire que la page ci-dessous
 
A noter qu'il y a très peu de contrôle, les noms de variables sont tout pourris, mais ça devrait être fonctionnel, à toi d'adapter
 
 
Voici donc la page "surveillance.php" par exemple

Code :
  1. <?
  2. //fonction pour rédupérer les numéros des offres
  3. Function extract_no($txt) {
  4.    $pattern = "(ALIGN=LEFT> )([0-9]{6})";
  5.    // Découpe la chaîne
  6.    if(ereg($pattern,$txt,$regs))
  7.       // récupération de la 2ème partie qui nous intéresse : les numéros des offres
  8.       return "$regs[2]";
  9.     Else
  10.     return false;
  11. }
  12. //tu récupères la page que tu veux surveiller
  13. $html = fopen ('http://wadme.unige.ch:3149/pls/opbp/bpoffre.bof?grpnb=9 ','r');
  14. //tu appliques la fonction de récupération des numéros d'offres à la page récupérée
  15. while(!feof($html))
  16.     {
  17.    
  18.     $buffer = fgets($html, 4096);
  19.     $test=extract_no($buffer);
  20.     If ($test!=false)
  21.         {
  22.         $table[]=$test;
  23.         }
  24.     }
  25. //tu récupères les nos d'offres stockés dans un fichier texte
  26. $handle=fopen('regexp2.txt','r');
  27. If (!feof($handle))
  28.     {
  29.     $buffer=fgets($handle, 4096);
  30.     $table2=split(' ',$buffer);
  31.     }
  32. fclose($handle);
  33. //tu compares les nos récupérés  
  34. //sur la page à ceux stockés dans ton fichier
  35. $result=array_diff($table, $table2);
  36. //s'il y a une différence,  
  37. //tu t'envoies un mail d'alerte (pas fait ici)  
  38. //et tu réécris tous les nos d'offres présents sur la page dans le fichier
  39. If (count($result)>0)
  40.     {
  41.    
  42.     //mail d'alerte, je te laisse voir ça !
  43.     echo 'test<br />';
  44.     $fp=fopen('regexp2.txt',"w" );
  45.     $nb=count($table);
  46.     for ($i=0;$i<$nb;$i++)
  47.         {
  48.        
  49.         $ligne=$table[$i];
  50.         If ($i!=$nb-1)
  51.             {$ligne.=' ';}
  52.         if (fwrite($fp, $ligne)===FALSE)
  53.             {
  54.             echo 'erreur';
  55.             exit;
  56.             }
  57.         }
  58.     fclose($fp);
  59.     }
  60. ?>


 
A noter que tu auras toujours un temps de retard sur les nouvelles offres (mise à jour, système sur une seule page)
 
EDIT : à noter que si le code source de la page change (manière de faire les tableaux de présentation des offres avec no d'offre sur 6 chiffres et un vilain "ALIGN=LEFT> avant, ça ne marchera plus, évidemment)


Message édité par deliriumtremens le 11-08-2004 à 17:47:12
Reply

Marsh Posté le 12-08-2004 à 06:05:40    


 
 
Merci Merci et Mille Merci :jap:  :jap:  
 
je vais regarder ça (je viens d'arriver lol  :whistle: ) très gentil de ta part, en tous cas ça me fait une bonne base pour bosser la dessus  :jap:  
 
 
Merci encore  :jap:  
 
 

Reply

Marsh Posté le 12-08-2004 à 06:10:01    

matinal, poh poh poh :)
 

Reply

Marsh Posté le 12-08-2004 à 06:10:01   

Reply

Marsh Posté le 12-08-2004 à 09:22:07    

j'arrive un peu tard mais j'ai plus simple...
 
 
pourquoi ne pas se contenter de comparer la taille du fichier html... tu stockes celle-ci dans un fichier.  
 
si la taille change, envoie un mail / la page, mise à jour du fichier.
 
disons que pour ce genre de truc c'est suffisant quoi [:spamafote]

Reply

Marsh Posté le 12-08-2004 à 11:25:21    

C'est effectivement plus malin (on peut aussi compter le nombre de lignes du fichier au cas où).
 
Je suis profondément vexé  :cry:


Message édité par deliriumtremens le 12-08-2004 à 11:25:34
Reply

Marsh Posté le 12-08-2004 à 11:30:28    

plus simple surtout...

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed