0

php curl を使用してこのページをスクレイピングする必要があります。この場合、ユーザーが下にスクロールすると、ajax を使用してさらに多くの項目が読み込まれます。ajax スクリプトが呼び出している URL を呼び出すことはできますか? もしそうなら、どうすればURLを把握できますか? 私は ajax について少し知っていますが、そこにあるコードはちょっと複雑です。関連するjsコードのペーストビンは次のとおりです

または、誰かがそのページをスクレイピングする別の方法を提案できますか? PS : 私は正当な理由でこれを行っています。

編集:私はそれを理解しました。ライブ http ヘッダー。質問を閉じることができます。忘却に反対票を投じました。

4

1 に答える 1

3

そのためにFireBugを使用できます。Console-Tab に切り替えて、ページで AJAX リクエストを作成します。

ページの一番下までスクロールすると、次のように表示されます。 json&inf-start=20

さらにスクロールすると: http://www.flipkart.com/computers/components/ram-20214?_l=m56QC%20tQahyMi46nTirnSA--&_r=11FxOYiYfpMxmANj4kGJzg--&_pop=flyout&response-type=json&inf-start=40

トークンは常に同じままのようです:_l=m56QC%20tQahyMi46nTirnSA--_r=11FxOYiYfpMxmANj4kGJzg--、パラメータも同様です_pop:_pop=flyout では、他のパラメータを見てみましょう:

これはメインページ用でした:

//no additional parameters...

これは最初の「リロード」用です:

&response-type=json&inf-start=20

そして、これは2番目の「リロード」用です:

&response-type=json&inf-start=40

したがって、&response-type=json&inf-start=$offset結果を JSON 形式で取得するには、最初の URI に追加する必要があるようです。また、FireBug でコンテンツを確認することもできるので、非常に簡単に操作できます。

スクリーンショットは次のとおりです。

ここに画像の説明を入力

于 2012-05-01T13:37:48.403 に答える