Je travaille sur un robot d'exploration et j'essaie de télécharger le lien "http://devonline.com/". Tout le temps je reçois le code 301 avec redirection sur le même lien. Comment éviter cette redirection et récupérer un contenu?Comment éviter la redirection
Voilà comment je fais la demande (fichier est égal à "/" dans ce cas):
String request
= "GET " + file
+ (file.endsWith("robots.txt") ? " HTTP/1.0\r\n" : " HTTP/1.1\r\n")
// " HTTP/1.1\r\n"
+ "User-Agent: " + CrawlerConfig.USER_AGENT + "\r\n"
// + ((!CrawlerConfig.SAVE_IMAGES) ? "Accept: text/html\r\n" : "")
// + "Accept: text/*\r\n"
+ (file.endsWith("robots.txt") ? "Connection: close\r\n" : "")
+ "Host: " + host + "\r\n" + "\r\n"/*
* + body
*/;
outStream.write(request.getBytes("US-ASCII"));
outStream.flush();
Quel contenu? S'il s'agit d'une redirection, il est peu probable que le contenu du corps de réponse soit utile. –
devonline.com ont probablement des règles sur leur config de serveur pour refuser une réponse aux demandes qui ne semblent pas provenir d'un véritable navigateur. –
Ne pas "éviter" la redirection; suis le! – Chris