Question

Je voudrais faire ce qui suit: saisir des nouvelles de plusieurs sites, analyser leur contenu en utilisant les sélecteurs jQuery et les afficher sur une page.

Comment cela pourrait-il être fait avec jQuery?

Merci.

Était-ce utile?

La solution

Pour JavaScript de raisons de sécurité (et donc jQuery) méthodes AJAX ne peut récupérer des données à partir des URL sur le même domaine que votre site.

Il y a un peu de travail autour est cependant. Vous pouvez utiliser un script côté serveur pour télécharger le contenu à distance pour vous - pensez comme un proxy. Sinon, vous pouvez regarder dans JSONP , mais le les besoins des sites distants de lui fournir.

Autres conseils

Il ne peut pas avec pur jQuery ou JavaScript parce que vous ne pouvez pas récupérer le contenu à partir de domaines différents de celui est en cours d'exécution à partir du script. Ceci est une mesure de sécurité pour empêcher Cross Site Scripting

Mais voir une solution possible ici: Cross site scripting (XSS)

À moins que vos nouvelles en provenance de sites qui fournissent explicitement un mécanisme pour extraire le contenu le long des lignes de ce que vous voulez, vous ne pouvez pas le faire à partir du client (le navigateur, qui est). Vous pouvez récupérer le contenu de votre serveur , cependant, puis remettez-le à votre client en tant qu'Etat une première que vous le souhaitez.

En ce qui concerne le javascript est, vous ne pouvez pas obtenir le contenu hors d'autres pages, à moins qu'ils ne partagent en utilisant explicitement une API.

Qu'est-ce que vous pouvez faire, est l'utilisation cURL sur le côté serveur obtenir des données provenant d'autres sites, puis manipuler que -. côté serveur et le servir

Note:. Prendre le contenu qui appartient à d'autres - la manipulation sans leur consentement et présentant comme votre propre est invitation à des problèmes

Contrairement à d'autres réponses, sources de bloc de script ne sont pas bloqués d'un accès inter-domaines, donc si vous ajoutez dynamiquement un bloc de script à l'en-tête de votre page et que la sortie résultante à partir du site créé comme un rappel (envelopper dans un appel de fonction essentiellement, et la poignée fonction TAHT dans votre propre code), vous pouvez accéder au contenu sur d'autres domaines -. d'un autre côté est que vous avez besoin du site pour vous présenter les données dans un rappel, il ne marche pas autrement travail

si les sites Web que vous essayez de saisir les nouvelles de l'alimentation de supports, vous pouvez alors utiliser jquery plugins comme jFeed pour récupérer le flux et vous pouvez alors afficher uniquement sur votre propre site.

bien, je vous recommande de configurer un webservice (en asp.net, php, etc) que rss fronces ou meta tags scrape dans les sites Web que vous voulez et utilisez jQuery.get () pour récupérer toutes les nouvelles

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top