2013-02-27 5 views
6

私はAJAXページネーションが実装されているWebページのスクレイピングに取り組んでいます。ウェブサイトはaspで拡張されています。つまり、.aspxページページ以外のページからデータを取得するためにページングフォームを送信しようとしましたが、ここでコードを見てくださいScraping data from all asp.net pages with AJAX pagination implementedを使用していますので、私の質問はどのようにPHPからページネーションリンクをクリックすることができますそれはjQueryまたはサーバー側でJavaScriptを実行することは可能ですか?jQueryをサーバー側で実行できますか?

私はNode.jsのは、サーバー側でJavaScriptを実行するために使用することができます知っているが、ApacheとPHP

+0

あなたは何を試していますか? –

+1

Node.jsはできません(クイックアンサー!!) –

+0

jQueryコードはサーバーにアップロードできますが、その効果はクライアント側で表示されるため、クライアント側ではlang ...というプログラミングが可能です。 javascript –

答えて

3

JavaScriptは、実際にはサーバー側で実行できます。ここ

node.js

あなたの解決策は、しかし、問題のためあまり意味がありませんjavascriptをサーバー側として、ページ付けのためのPHPスクリプトを呼び出すためにAJAXを使用することです。私は4ページネーションリンクを持っているし、そのリンクをクリックしてイベントに私はAJAX呼び出しを行い、その後、アヤックスの成功にあなたの願いとして表示結果をコールバックの上に何ができるか

+0

単純なページ付けの要求についてはアドバイスしていませんか? – CR41G14

+0

PHPでnode.jsをどのように使うことができますか? –

1

でそれを使用する方法がわからないんjQueryのように、サーバーサイドでのjQueryを実行することはできませんユーザーのWebブラウザ(javascriptインタープリタ内)で実行されます。 Ajaxの呼び出しをjQuery経由でサーバー上でコードを実行できるPHPスクリプトにすることができます。

1

JQueryとJavascriptはクライアント側言語であり、ページングのためには、これはjQueryを使用して簡単に実現できます。

Ajaxを使用すると、ページのレンダリングを行わずにサーバーと通信でき、ユーザーに「クライアント側」の操作性を向上させることができます。 Ajaxを使用してサーバーに接続し、jQueryを使用してサーバーからの戻り操作を実行できます。

1

私はajaxでページネーションを簡単に行うことができると思います。それ以外の場合は、実際にはサーバーサイドのjsに行くwanne。次に試してみてくださいNode.js

2

は例で

<script type="text/javascript" src="js/jquery.js"></script> 
<script type="text/javascript"> 

    $(function() 
    { 
     $('ul li a').on('click',function() 
     { 
      var href = $(this).attr('href'); 

      $.ajax(
      { 
       url   : href, 
       data  : passData, 
       dataType : 'html' 
       beforeSend : function() 
       { 

       }, 
       success  : function(response) 
       { 
        //display it as needed... 
       } 
      }); 
     }); 
    }); 

</script> 

<ul> 
    <li><a href="paging.aspx?page=1">1</a></li> 
    <li><a href="paging.aspx?page=2">2</a></li> 
    <li><a href="paging.aspx?page=3">3</a></li> 
    <li><a href="paging.aspx?page=4">4</a></li> 
</ul> 

です。

しかし、jQueryはサーバーでnode.jsを使用できないことに注意してください。

+0

ページは、page = 1 page = 2などのような簡単なページングを持っていません。ページネーションリンクをクリックする度に、__E​​VENTTARGET、__ EVENTARGUMENT、__ EVENTARGUMENT、__ VIEWSTATE、__ EVENTVALIDATIONなどの隠しフォームを送信します。 –

+0

@SubodhGhulaxeそれは問題ではありません。私は明確に例を述べました...だから、私はちょうどあなたができることについてあなたに助けを与えました... –

2

PhantomJSを他のサービスのHTMLページとやりとりするために使用します。 PHPのライブラリはthisのようにあります。

CasperJSは、PhantomJSの上に構築されたライブラリで、一般的なテスト/スクリプト作成タスクを自動化することができます。

リモートページと対話する必要はないが、jQueryセレクタを使用してHTMLからデータを抽出する場合は、Cheerioを使用します。

関連する問題