我必須使用php curl來抓取this page。在這個用戶向下滾動的時候,使用ajax加載更多的項目。我可以調用ajax腳本正在調用的URL嗎?如果是這樣,那麼我如何確定URL?我知道一些Ajax,但代碼對我來說有點複雜。 這裏是相關的js代碼pastebin查找由ajax動作調用的URL
另外可以有人建議一個替代方法刮該頁? PS:我這樣做是爲了好的原因。
編輯:我想通了。 Live http頭文件。問題可以關閉。墮落爲遺忘。
我必須使用php curl來抓取this page。在這個用戶向下滾動的時候,使用ajax加載更多的項目。我可以調用ajax腳本正在調用的URL嗎?如果是這樣,那麼我如何確定URL?我知道一些Ajax,但代碼對我來說有點複雜。 這裏是相關的js代碼pastebin查找由ajax動作調用的URL
另外可以有人建議一個替代方法刮該頁? PS:我這樣做是爲了好的原因。
編輯:我想通了。 Live http頭文件。問題可以關閉。墮落爲遺忘。
您可以使用FireBug。切換到控制檯選項卡,然後讓頁面發出AJAX請求。
這是滾動到頁面底部後,什麼應該看到:http://www.flipkart.com/computers/components/ram-20214?_l=m56QC%20tQahyMi46nTirnSA--&_r=11FxOYiYfpMxmANj4kGJzg--&_pop=flyout&response-type=json&inf-start=20
令牌似乎始終保持不變:_l=m56QC%20tQahyMi46nTirnSA--
和_r=11FxOYiYfpMxmANj4kGJzg--
,這樣做的_pop
-parameter:_pop=flyout
因此,讓我們來看看其他參數:
這一個是主頁:
//no additional parameters...
這一個第一 '刷新':
&response-type=json&inf-start=20
,這一次第二的 '刷新':
&response-type=json&inf-start=40
所以,appearently你只需要追加&response-type=json&inf-start=$offset
您最初的URI以JSON格式獲得結果。您還可以在FireBug中看到這些內容,這些內容可以很容易地使用它們。
以下是截圖:
你的問題是有點混亂。您可以使用Firebug for Firefox等網絡模塊監控請求和發送到哪些URL。 Chrome內置了IE9,我認爲IE9也是如此。 – Armatus