Je construis un bot web pour me connecter à certains de mes comptes sur des sites web mais l'une des url envoie des cookies de javascript et curl est incapable de les stocker. Toute suggestion?curl ne stocke pas de cookies
Répondre
Curl n'analyse pas Javascript, donc les cookies ne seront jamais définis.
Votre simplicité me frappe. Je le sais déjà depuis que je suis là. J'ai demandé une solution si possible. Peut-être appelez exec et exécutez IE à partir de la commande pour stocker les cookies et les attraper. Si quelqu'un l'a fait avant, répondez. –
Vous pouvez analyser le fichier javascript en utilisant la langue que vous utilisez et rechercher l'instruction document.cookie. Vous pouvez ensuite utiliser ces données pour définir le cookie manuellement dans curl. (CURLOPT_COOKIE)
Ce ne serait pas exactement la meilleure idée si vous espérez que cela fonctionne avec un certain nombre de sites, mais puisque vous déclarez que vous connaissez le site, vous aurez besoin de charger sa possibilité. Je vais avoir une idée de la façon dont le Javascript va ressembler.
Si vous avez des mois de temps libre sur vos mains, vous pouvez compiler webkit et its javascript engine et modifier la fonctionnalité de réglage de cookies afin qu'il exporte les cookies pour stdout
(puis les attraper avec exec
de PHP). Bonne chance avec ça cependant. Considérant que vous posez cette question par rapport à cURL, je ne pense pas que ce soit tout à fait votre allée ...
Je voudrais en quelque sorte aller avec la réponse de Kewley si vous êtes désespéré. Vous devriez être en mesure de désosser le javascript et voir la logique derrière la façon dont l'application web définit ses cookies. Si elle authentifie et renvoie le résultat de connexion avec XHR, regardez ce qui est envoyé et reçu par le navigateur (avec Firebug). Ajoutez des points d'arrêt sur les lignes document.cookie
et observez les cookies en cours de définition (et leur définition). Une fois que vous connaissez la logique précise de l'authentification, vous effectuez les demandes en coulisse nécessaires pour suspendre une session sur le site avec cURL.
- 1. Gestion des cookies Curl
- 2. cURL Cookies et Facebook
- 3. cURL - cookies et sessions
- 4. Cookies PHP et cURL
- 5. Utilisation de cookies avec CURL
- 6. Utilisation de cookies avec cURL
- 7. ne peut pas activer cookie curl php
- 8. PHP cURL ne stocke pas le cookie de session ... Comment résoudre ce problème?
- 9. CURL n'envoie pas de cookies avec la requête POST
- 10. C# XML Serializer ne stocke pas d'attribut
- 11. Ne pas Echo Out cURL
- 12. Cookies ne fonctionne pas correctement
- 13. Quelqu'un peut-il expliquer le traitement des cookies CURL (PHP)?
- 14. Comment est-ce que je stocke les cookies dans flex?
- 15. Pourquoi mysql ne stocke pas de données après le caractère "#"?
- 16. PHP cURL ne renvoie pas XML
- 17. curl ne fonctionne pas dans xampp localhost
- 18. InternetGetCookie ne récupère pas tous les cookies
- 19. asp.net mvc cookies ne sont pas renvoyés
- 20. les cookies Rails ne fonctionne pas correctement
- 21. Mes cookies ne cuisent pas correctement
- 22. cookies ne fonctionne pas dans Internet Explorer
- 23. Est-ce que SqlDbType.DateTime ne stocke pas les secondes?
- 24. MySQL ne stocke pas les caractères étrangers correctement
- 25. stocke les données Memcached mais Rails ne l'utilise pas
- 26. Mon Expression Tree ne stocke pas les objets correctement :(
- 27. cURL: Comment savoir si mes cookies sont correctement configurés?
- 28. Comment transmettre des cookies sur une redirection CURL?
- 29. Curl/Fetch question - Referer, les données post, Cookies
- 30. cookie curl ne pas créer en cas de succès
À court d'analyser le javascript vous-même, je ne vois pas que vous pouvez faire beaucoup. Rappelez-vous que curl fonctionne en PHP et n'interpelle pas le javascript sur la page retournée. Il semble que vous ayez rencontré un site, que ce soit à dessein ou que le hasard n'autorise pas les robots Web à y avoir accès. – Tom