Version complète: sur le forum Webmaster Hub : Automatisme pour télécharger des données
Webmaster Hub > Création et exploitation de Sites Internet > Les langages du Net > Asp, Java, Cfm, autres.
coockie
Bonjour,

Voilà ma situation :

Afin de télécharger des données contenues dans une BD de type inconnu, on doit se connecter à un site en SSL et cliquer sur les liens qui nous intéressent...

Afin de simplifier ce système j'ai créé en PHP, un petit "logiciel" qui génére les URL pour télécharger les données de la base. Mais la procédure est encore trop longue puisque je ne peux pas télécharger les fichiers automatiques en utilisant le "header" (ce ne sont pas des fichiers physiques) et il faut donc cliquer sur l'URL pour effectuer la requête qui extrait les données que l'on veut télécharger. De plus, le nom n'est pas généré automatiquement (il faut donner un nom de fichier à l'enregistrement), donc l'utilisateur avec mon "logiciel", qui génére les URL des données à télécharger, doit "copier" le lien, cliquer sur ce lien et "coller" dans "nom de fichier" avant de cliquer sur enregistrer... Et cela environ 1000 à 3000 selon les données désirées...

Voilà je voudrais donc trouver un langage qui me permettrait d'automatiser cela ou du moins une partie de cela... Je pense à JAVA ou PERL, mais je n'ai que des notions de PHP/C++...

Merci à ceux qui peuvent m'aider et à ceux qui ont lu jusqu'au bout...
Titag
Je te donne une piste, je ne sais pas ce qu'elle vaut :

essaye "d'ouvrir" tes liens avec la fonction fopen (fr.php.net).

De cette manière tu peux générer les liens automatiquement.
coockie
Non cela ne marche pas, la requête quand on clique sur le lien est primordiale dans le processus sinon le fichier télécharger ne contient rien...
Titag
Quel est le format des données que tu télécharge ?
coockie
C'est une requête du style : https:/URLSite/CustomerQuery.csv?subElmtIDs=0&subElmtGrpID=1565435&timeSpan=day&pleind'autresparamètres..
Et cela renvoie un fichier .csv pour lequel IE génère un nom de fichier aléatoire à modifier...
Titag
Tu doit pouvoir recupérer le fichier si tu fait un fopen en mode binaire et que tu lis le résultat avec fread (il me semble)

Sinon il faut peut-etre jeter un oeil du coté de la fonction fsockopen...


PS : je ne suis pas du tout sur de moi sur ce coup là... il faut attendre les pros en la matière
maximettb
CITATION(coockie @ mercredi 20 octobre 2004, 10h34)
Afin de télécharger des données contenues dans une BD de type inconnu, on doit se connecter à un site en SSL et cliquer sur les liens qui nous intéressent...

Donc un simple fopen ne devrait pas marcher à mon avis.
Java et sa librairie SecureSocket devraient très bien fonctionner et est assez simple d'accès (si tu as des exemples). Le module Net::SSLeay devrait aussi faire l'affaire, mais je ne connais pas suffisament ce module pour te dire si ce sera plus ou moins facile qu'en Java...
Par contre, une chose est sûre, Perl étant un logiciel spécialisé dans le traitement de données, extraction, etc, il sera bien plus facile après de traiter les données ainsi récupérées...
maximettb
Je viens de réflechir un peu... (oui ca m'arrive des fois!) et il y'a peut être une autre solution toute simple à ton problème! Spécifier le nom du fichier dans l'header.
En PHP, ca donne ca je pense:
CODE
header("Content-type:application/$type\n");
header("Content-disposition:inline; filename=\"nom_de_fichier.$type\"\n");
header("Content-size:$size\n");

Ainsi, quand l'utilisateur clique sur le lien, la boite "Enregistrer sous..." apparait automatiquement avec le nom de fichier passé dans l'header...
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.