なので、投稿する前に見回してみましたが、答えが見つからないようです。私のジレンマ:
さまざまなページ(すべて類似した差分製品)へのURLリンクを格納するXMLファイルがあります。
jQueryとAJAXを使用することで、XMLファイルからリンクを取得できます。
次に、これらのリンクを順番に、プロキシサーバーを使用して別のサイトに接続してデータを取得する別のAJAX呼び出しに渡すことができるようにします。この場合、それは特定のクラスです。次に、そのクラス内のデータを収集し、それを自分のサイトのスパンに順番に適用できるようにする必要があります。
スクレイピングされたデータを待機するHTMLマークアップ
<div class="panel">
<span class="price"></span>
</div>
<div class="panel">
<span class="price"></span>
</div>
<div class="panel">
<span class="price"></span>
</div>
JSはこれをすべて実行します:
//Pull Content Necessary Links From XML File
$.ajax({
type: "GET",
url: "/Test/addTocart/realExample/Media/xml/items.xml",
dataType: "xml",
success: function(xml) {
$(xml).find('target').each(function() {
//Scan Through XML to Find Each Link
link = $(this).find('link').text();
function fetchPage(url) {
$.ajax({
type: "GET",
url: "http://test/crossdomainproxy.aspx?u=" + link,
error: function(request, status) {
alert('Error fetching ' + url);
},
success: function(data) {
parse(data);
}
});
}
function parse(data) {
alert($(data).find(".threeThin .price-side").text());
}
fetchPage(1);
});
}
});
したがって、基本的に、他のページのマークアップが次のようになっている場合:
サイト1
<span class="price-side">$23.33</span>
サイト2
<span class="price-side">$22.33</span>
サイト3
<span class="price-side">$245.33</span>
私のマークアップは次のようになります。
<div class="panel">
<span class="price">$23.33</span>
</div>
<div class="panel">
<span class="price">$22.33</span>
</div>
<div class="panel">
<span class="price">$245.33</span>
</div>
だから私の質問は、マークアップに順番にロードするように指定するにはどうすればよいですか?xml内のリンクをループしてから、それらをajax->プロキシにスローし、結果をループして各スパンに吐き出しますか?
どんな助けでも大歓迎です!ありがとう!