Script php qui enregistre les pages

Signaler
Messages postés
4
Date d'inscription
jeudi 15 mars 2007
Statut
Membre
Dernière intervention
12 août 2011
-
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
-
bonjour
je suis débutant en php.
je voudrai savoir comment accéder avec php a une url et enregistrer la page sous un nom et un emplacement qu'on choisi dans le eu utilisant le script et pas dans un panneau enregistrer sous.
y a t'il quelqu’un qui peut m'aider svp.
merci d'avance.

17 réponses

Messages postés
3708
Date d'inscription
lundi 5 juillet 2004
Statut
Membre
Dernière intervention
27 avril 2012
27
Salut,

Désolé mais je n'ai rien compris.
Tu veux enregistrer une page distante avec PHP sur le disque du serveur ?


Cordialement,

Kohntark -
Messages postés
4
Date d'inscription
jeudi 15 mars 2007
Statut
Membre
Dernière intervention
12 août 2011

bonjour
oui c'est bien sa sauf que la page que je veut enregistrer contient une image généré par un code php
et je veu enregistrer plusieurs page apeupré 1000 pages
l’avantage c que leurs url
imagephp.php?code1
imagephp.php?code2
imagephp.php?code3.....
donc je pence réaliser une boucle for qui visite l’URL et enregistre l’image automatiquement...
avez vous une id si c'est faisable?
merci
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
39
Bonjour,

Ton message est difficile à lire.

Bon, php sait récupérer du contenu sur le web, via la fonction file_get_contents, tu peux lui donner une url, ça ne pose aucun problème.

Cordialement,
Messages postés
4
Date d'inscription
jeudi 15 mars 2007
Statut
Membre
Dernière intervention
12 août 2011

merci pour la réponse
je devrai ecrir se code alors dans une boucle for
$mon_image=file_get_contents('url');
c bien sa?
mais comment enregistrer le fichier image?
Messages postés
159
Date d'inscription
mardi 2 janvier 2007
Statut
Membre
Dernière intervention
7 mai 2012

Salut,
$nb_page = 15;
$monfichier = fopen("fichier.html", "a+");
for($i=1;$i<$nb_page;$i++){
   $page = file_get_contents("http://www.example.com?page=$i"); 
   fwrite($monfichier,$page);
}
fclose($monfichier); 


Je l'ai codé sans tester, mais on doit être proche de la solution

Enjoy
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
39
En lisant un peu la doc des fonctoins :
file_put_contents
fopen
fwrite
file_get_contents


sur php.net, tu devrais pouvoir trouver toi meme la solution.
Messages postés
159
Date d'inscription
mardi 2 janvier 2007
Statut
Membre
Dernière intervention
7 mai 2012

la solution est la
Mais si tu veux pas tout dans le meme fichier.html tu dois juste mettre fopen et et flose dans la boucle

fopen("fichier$i.html", "a+"); //pour generer un nouveau fichier

C'est du prémaché mais j'étais motivé

Enjoy
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
39
file_put_contents fonctionne aussi.

ça serait intéressant d'utiliser fopen si tu lisais ta page par bloc pour ne pas la charger entierement en mémoire, mais c'est assez inutile.
Messages postés
159
Date d'inscription
mardi 2 janvier 2007
Statut
Membre
Dernière intervention
7 mai 2012

Salut coucou747,
Oui effectivement, bien que ça revienne au meme, c plus propre.
L'habitude d'utiliser notre bonne vieille fonction fopen

Cordialement
Messages postés
1654
Date d'inscription
dimanche 7 septembre 2008
Statut
Membre
Dernière intervention
11 septembre 2013
16
bonjour

si tu utilises des url
style http://unsite.fr/unrep/?page=1
ça marche mais attend toi à ne pas récupérer les images et autres
elements lier à la page ...

sinon les aspirateurs de site ça marche aussi ...

Bonne programmation !
Messages postés
4
Date d'inscription
jeudi 15 mars 2007
Statut
Membre
Dernière intervention
12 août 2011

merci beaucoup pour votre aide
voila le code que g utilisé


<?php
$nb_page = 2700;
$bebut = 2184;
for($i=$bebut;$i<$nb_page;$i++){
   $page = file_get_contents("http://www.xx.com/xxxx.php?code=$i"); 
$monfichier = fopen('image'.$i.'.png', "a+");
   fwrite($monfichier,$page);
}
fclose($monfichier); 
?>


merci encore
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
39
tu ne clos que le dernier fichier...


<?php
$nb_page = 2700;
$bebut = 2184;
for($i=$bebut;$i<$nb_page;$i++){
$page = file_get_contents("http://www.xx.com/xxxx.php?code=$i");
$monfichier = fopen('image'.$i.'.png', "a+");
fwrite($monfichier,$page);
fclose($monfichier);
}
?>
Messages postés
3708
Date d'inscription
lundi 5 juillet 2004
Statut
Membre
Dernière intervention
27 avril 2012
27
Salut,

Ca ne pose pas de problème au propriétaire du site distant d'avoir 600 requêtes d'un coup qui pompe son contenu ?
J'imagine bien que tu as vu tout ça avec lui.
Tu as bien fait, parce que moi si je détecte ce genre de truc je fais planter le script distant, j'envoie des virus, des photos de l'arrière grand mère de ma belle mère, je surcharge au max tout ce que je peux et mets le boxon par la suite (pratique, j'ai déjà des tonnes de fichiers de l'autre côté).

Mais quand on a un minimum de déontologie tout baigne


Kohntark -
Messages postés
1654
Date d'inscription
dimanche 7 septembre 2008
Statut
Membre
Dernière intervention
11 septembre 2013
16
bonsoir
@kohntark
en effet ces questions sont toujours limites on peut y voir du vol de contenu même du clonage de page voir des manoeuvres de fishing si c'est du pompage html



Bonne programmation !
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
39
Bonjour,

Je serais ravi que les arrières grand mères ne rentrent pas dans le débat.
Messages postés
3708
Date d'inscription
lundi 5 juillet 2004
Statut
Membre
Dernière intervention
27 avril 2012
27
Salut Coucou747,

Je ne sais pas trop comment prendre ton message ...
Sur un forum où "On ne pose pas de question en rapport avec virus, crack, hack, trojan etc..." il me semblait nécessaire de rappeler que le pompage n'est pas très correct (et souvent illégal) et que jouer à ce petit jeu peut apporter quelques ennuis pas uniquement juridiques.

Cordialement,

Kohntark -
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
39
Bonjour,

J'aime bien ta remarque, j'essaie juste de faire en sorte que ça ne parte pas en troll, mais je suis d'accord avec toi sur le fait que la pratique n'est pas forcément très bien vue, ni très correcte.

Cordialement