Erreur lors de téléchargement de fichier : does not support js
Résolu
electroking
Messages postés
236
Date d'inscription
Statut
Membre
Dernière intervention
-
electroking Messages postés 236 Date d'inscription Statut Membre Dernière intervention -
electroking Messages postés 236 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Dans un de mes programmes je souhaite télécharger un fichier depuis un site en lige (donc je suis le développeur) voici le code que j'utilise :
le seul problème c'est que cet algo agit comme si il visitait la page et qu'il lisait le code source de cette page web, cette solution m'aurait parfaitement plu, seulement mon programme ne supporte pas le javascript et donc mon fichier contient constamment ceci :
Auriez vous une idée pour éviter cette erreur javascript ? Ou un autre moyen de télécharger un fichier en ligne ?
Cordialement,
Faure Lucas.
Dans un de mes programmes je souhaite télécharger un fichier depuis un site en lige (donc je suis le développeur) voici le code que j'utilise :
public void dl() throws IOException { URL test = new URL("http://mondomaine/monfichier.ext"); URLConnection uc = test.openConnection(); String FileType = uc.getContentType(); int FileLenght = uc.getContentLength(); if (FileLenght == -1) { throw new IOException("Fichier non valide."); } InputStream in = uc.getInputStream(); String FileName = test.getFile(); FileName = FileName.substring(FileName.lastIndexOf('/') + 1); FileOutputStream WritenFile = new FileOutputStream(FileName); byte[]buff = new byte[1024]; int l = in.read(buff); while(l>0) { WritenFile.write(buff, 0, l); l = in.read(buff); } WritenFile.flush(); WritenFile.close(); }
le seul problème c'est que cet algo agit comme si il visitait la page et qu'il lisait le code source de cette page web, cette solution m'aurait parfaitement plu, seulement mon programme ne supporte pas le javascript et donc mon fichier contient constamment ceci :
<html><body><script type="text/javascript" src="/aes.js" ></script><script>function toNumbers(d){var e=[];d.replace(/(..)/g,function(d){e.push(parseInt(d,16))});return e}function toHex(){for(var d=[],d=1==arguments.length&&arguments[0].constructor==Array?arguments[0]:arguments,e="",f=0;f<d.length;f++)e+=(16>d[f]?"0":"")+d[f].toString(16);return e.toLowerCase()}var a=toNumbers("f655ba9d09a112d4968c63579db590b4"),b=toNumbers("98344c2eee86c3994890592585b49f80"),c=toNumbers("7a16ee759ae8d08fa1bc7b4e52860371");document.cookie="__test="+toHex(slowAES.decrypt(c,2,a,b))+"; expires=Thu, 31-Dec-37 23:55:55 GMT; path=/"; location.href="http://undb.byethost7.com/test.php?i=1";</script><noscript>This site requires Javascript to work, please enable Javascript in your browser or use a browser with Javascript support</noscript></body></html>
Auriez vous une idée pour éviter cette erreur javascript ? Ou un autre moyen de télécharger un fichier en ligne ?
Cordialement,
Faure Lucas.
A voir également:
- Erreur lors de téléchargement de fichier : does not support js
- Site de telechargement - Accueil - Outils
- Fichier bin - Guide
- Fichier epub - Guide
- Fichier rar - Guide
- Comment réduire la taille d'un fichier - Guide
1 réponse
Bonjour,
Déjà, on voit tout de suite le copier-coller dans ton code... le problème c'est que ce code là il a 10 ans !!! (voir par exemple ici, en 2007)
Il y a quand même plus simple avec les versions plus récentes de Java...
Exemple :
Quant à ton problème, ce n'en est pas vraiment un, tu télécharges une page web, elle vient telle qu'elle est avec tout son contenu, donc avec son code JavaScript et son CSS s'il y en a...
Donc il faut faire avec ce contenu car le site ne t'en fournira pas d'autre, il fournit un code compréhensible par un navigateur web, à toi de te comporter comme un navigateur et de traiter ces données, quitte à en ignorer une partie.
Déjà, on voit tout de suite le copier-coller dans ton code... le problème c'est que ce code là il a 10 ans !!! (voir par exemple ici, en 2007)
Il y a quand même plus simple avec les versions plus récentes de Java...
public static void download(URL src, File dest) throws IOException { try (PrintWriter out = new PrintWriter(dest); Scanner in = new Scanner(src.openStream())) { while (in.hasNextLine()) out.println(in.nextLine()); } }
Exemple :
download(new URL("https://www.google.fr"), new File("C:/google.html"));
Quant à ton problème, ce n'en est pas vraiment un, tu télécharges une page web, elle vient telle qu'elle est avec tout son contenu, donc avec son code JavaScript et son CSS s'il y en a...
Donc il faut faire avec ce contenu car le site ne t'en fournira pas d'autre, il fournit un code compréhensible par un navigateur web, à toi de te comporter comme un navigateur et de traiter ces données, quitte à en ignorer une partie.
Oui c'était bien un copié-collé de code dépassé mais il marchait c'est tous ce qu'il m'importait, je l'avais remplacé par ceci :
Qui posait le même problème, je viens de tester le tiens, idem.
Le problème c'est que lorsque mon programme JAVA navigue vers mon URL, il est considéré comme un navigateur qui ne supporte pas JAVASCRIPT. Il me faut donc une méthode ou un paramètre qui fasse considérer au site que je supporte JAVASCRIPT, langage que je n'ai pas utilisé lors de la programmation de mon site d'ailleurs ; c'est uniquement mon serveur qui le demande.
Donc si je veux pas payer faut que je trouve une solution en JAVA
https://fr.wikipedia.org/wiki/User-Agent
Tu parles de quoi ? Quel rapport avec le reste de la discussion ?