2011-06-18 9 views
0

私はYQLが初めてで、かなり簡単な作業をする方法を学びたいと思っています。javascript/phpでYQLを使用して記事htmlをスクラップしますか?

URLのリストを持っていて、HTMLソースをjavascriptの文字列として取得したいとします(あとでajax経由でデータベースに挿入できるようにします)。この情報をJavascriptに戻すにはどうすればいいですか?それとも、PHPでやる必要がありますか?私はどちらでもうまくいく、本当に - 何でもできる。ここで

は、私は彼らのコンソール上で実行したいのクエリの例です:

は、HTMLからどこのurl =「http://en.wikipedia.org/wiki/Baroque_music」*

を選択し、目標です基本的にはHTMLや多分テキストだけを文字列として保存します。

どうすればいいですか?私は幾分クエリの仕組みを理解していますが、javascriptおよび/またはphpと統合する方法は実際にはわかりません(URLのリストがあり、ループを繰り返し、それぞれHTMLを取得してどこかに保存したいと思います)。

ありがとうございました。

+0

JavaScriptを使用してHTML /テキストを取得し、後でAJAX経由でサーバーに保存する理由はありますか?保存する前にブラウザのコンテンツを操作しますか? – salathe

答えて

1

ウェブブラウザのセキュリティ機能が組み込まれているため、Javascriptで他のページを読むことはできません。それはSame origin policyと呼ばれます。

一般的な方法は、PHPを使用してサーバーからこれらのサイトの内容をスクラップすることです。

bookmarkletというjavascriptのオプションがあります。

ブックマークバーをブックマークバーに追加して、サイトのコンテンツでブックマークをクリックすることができます。

スクリプトはホストページに読み込まれ、コンテンツを読み込んでサーバーに戻すことができます。

奇妙なことに、同じ発信元ポリシーは、このホストページから自分のドメインにデータをPOSTすることを妨げません。ドメインにホストされているソースを持つIFRAMEにFORMをPOSTする必要があります。

POSTから戻ってくる応答を読み取ることはできません。
setIntervalでポーリングしてJSONPというドメインを呼び出すと、POSTが成功したかどうかを知ることができます。

関連する問題