|
FORUMS PROFESSIONNELS WINDEV, WEBDEV et WINDEV Mobile |
| | | | | |
| HTTPDonneRésultat(httpRésultat) avec retour a blanc |
| Débuté par Canalou7769, 03 fév. 2026 18:25 - 5 réponses |
| |
| | | |
|
| |
Membre enregistré 3 messages |
|
| Posté le 03 février 2026 - 18:25 |
Bonjour a tous, Je lance une httprequete sur le site de IMDB mais j'ai un retour à blanc.
J'ai tester la même procédure avec d'autres site comme PCSOFT ou ALLOCINE, ETC... et ca fonctionne très bien. J'ai en retour le code de la page.
Voici le code que j'emploi :
Texte est une chaine URL est une chaine = "https://www.imdb.com/fr/"
HTTPRequête(URL ) Texte = HTTPDonneRésultat(httpRésultat)
Valeur de Texte après retour = ""
J'ai récupérer l'entête et j'ai ceci :
HTTP/1.1 202 Accepted Server: CloudFront Date: Tue, 03 Feb 2026 17:22:01 GMT Content-Length: 0 Connection: keep-alive x-amzn-waf-action: challenge Cache-Control: no-store, max-age=0 Content-Type: text/html; charset=UTF-8 Access-Control-Allow-Origin: * Access-Control-Max-Age: 86400 Access-Control-Allow-Methods: OPTIONS,GET,POST Access-Control-Expose-Headers: x-amzn-waf-action X-Cache: Error from cloudfront Via: 1.1 ef16cf332760e013a5fd2d10ab2b11ec.cloudfront.net (CloudFront) X-Amz-Cf-Pop: CDG52-P2 Alt-Svc: h3=":443"; ma=86400 X-Amz-Cf-Id: VH47DlnpOOh7eJpMq6N8AwMP1B1icQcEpzt7SxGxzFtgjA4xeIeCzA==
Quelqu'un aurait il une idée? Votre aide me serait d'un grand secours
Je suis en Windev 26
Merci d'avance
ChristianMessage modifié, 03 février 2026 - 18:44 |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 4 334 messages |
|
| Posté le 03 février 2026 - 21:32 |
Bonjour, Dans un premier temps, il est dorénavant souhaitable d'utiliser une variable de type httpRequête avec la fonction HTTPEnvoie plutôt que la fonction HTTPReuête. Dans un deuxième temps la requête a-t-elle été exécutée (coide etat 200)? Enfin, n'utiliserais tu pas HTTPDestination ?
-- Il y a peut être plus simple, mais, ça tourne Quand tout a échoué, utilise l'option RTFMMessage modifié, 03 février 2026 - 21:39 |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 499 messages |
|
| Posté le 04 février 2026 - 09:52 |
Bonjour,
Il ne semble pas y avoir d'erreur, cela est "logique" que le code ne renvoie rien, car la requête n'a rien renvoyée. En effet dans les entêtes on peut voir que la longueur du contenu envoyé est de... zéro:
HTTP/1.1 202 Accepted Content-Length: 0
Il est vraisemblable que votre requête est identifiée par IMDB comme réalisée par un robot, et par conséquent il bloque toute consultation possible par programmation pour éviter le scraping. Ce n'est pas nouveau chez IMDB, mais cela a dû être encore plus renforcé depuis l'avenue des IA qui essaient de puiser dans tout ce qu'elles trouvent.
Il existe des solutions pour quand même récupérer ces données : - Soit utiliser l'API officielle d'IMDB : https://developer.imdb.com/documentation/api-documentation/getting-access/… - Soit piloter par programmation un navigateur, à-la-Sélenium, ou éventuellement à tester avec le champ Web de WinDev. - Utiliser des plateforme plus accessibles et communautaires, telles que https://www.themoviedb.org/… |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 25 messages |
|
| Posté le 04 février 2026 - 12:53 |
Bonjour,
Voici ci-dessous un code fonctionnel pour Windev 26. L'astuce consiste à utiliser un user-agent et une variable de type Buffer.
URL est une chaîne = "https://www.imdb.com/fr/"
SI httpRequête(URL, "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36") ALORS bufF est un Buffer = HTTPDonneRésultat(httpRésultat) fSauveBuffer(fRepExe()+[fSep]+"code.html", bufF) STOP FIN
NN12 |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 3 messages |
|
| Posté le 07 février 2026 - 18:09 |
Bonjour,
Merci a tous pour vos réponses.
Je vais tester et regarder tous vos conseils.
Bien à vous |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 3 messages |
|
| Posté le 07 février 2026 - 19:11 |
Bonjour NN12,
Merci beaucoup pour ce retour. Ca me donne exactement le résultat que je voulais.
Même en employant directement le chargement dans une variable Chaine :
Texte est une chaine = HTTPDonneRésultat(httpRésultat) (J'obtient une chaine non vide) 👍
Bien à toi |
| |
| |
| | | |
|
| | | | |
| | |
| | |
| |
|
|
|