Bonsoir,
J'ai un problème en ce qui concerne la récupération de la source d'une page web.
J'utilise une classe que j'ai trouvé sur le net qui me permet notamment de récupérer une source gzippé, voici un lien vers la classe en question :
http://a-base-de-pimp.fr/c-class-per...-des-page-web/
La classe fonctionne très bien, je parviens à récupérer ma source correctement.
Cependant j'ai un problème avec le site suivant : http://anidb.net/
Lorsque je vais chercher la source trop régulièrement, au bout d'un moment cela ne fonctionne tout simplement plus et fais planter mon programme.
J'ai contourné le problème de plantage avec un thread, cependant il suffit que cela ne fonctionne plus une fois pour que toutes mes autres tentatives échouent elles aussi. En gros je dois redémarrer mon programme à chaque fois que j'obtiens ce problème...
Par curiosité, j'ai voulu tester voir si cela pouvait venir de la classe que j'ai récupéré ou bien si cela venait du site. Donc j'ai fais un petit test avec ce code :
Lorsque je récupère la source de google, aucun problème la boucle continue infiniment (Du moins j'ai stoppé le programme à environ 50 tentatives).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 int i = 0; while (true) { i++; //GetPageWeb.get("http://www.google.fr"); GetPageWeb.get("http://anidb.net/"); Debug.WriteLine("tentative n°"+i); }
Cependant lorsque je la récupère de anidb, au bout de seulement 2 tentatives cela bug. À chaque fois avec ce test, cela a buggé au bout de 2 tentatives.
Alors je me suis dis que peut-être ca pouvait être une protection anti-flood sur une IP ou quelque chose de ce genre là du côté du site... Cependant ça n'explique pas pourquoi je dois à chaque fois redémarrer mon programme pour que cela fonctionne à nouveau... Donc il doit y avoir un problème quelque part dans la classe, mais je vois pas du tout d'où ca pourrait venir.
Autre information qui est peut être importante : la source de anidb est gzippé.
Voilà, si quelqu'un a une idée, merci d'avance =)
Partager