検索

ホームページ  >  に質問  >  本文

如何用node.js爬取动态数据

如何爬取动态数据,就是ajax请求的数据
比如说在代码中

<html>

<head>
<title>开课课程信息</title>
<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
</head>

<frameset border="false" frameborder="0" rows="30,*">
  <frame name="header" scrolling="no" noresize target="frmCourMain" src="akcjj.asp" marginwidth="0"
  marginheight="0">
  <frame name="frmCourMain" src="akechengdw.asp" scrolling="auto" target="frmCourMain">
  <noframes>
  <body>
  <p>This page uses frames, but your browser doesn't support them.</p>
  </body>
  </noframes>
</frameset>
</html>

从代码中可以看出来源的数据是框架的akechengdw.asp,但是如何爬取这样的数据

大家讲道理大家讲道理2787日前417

全員に返信(5)返信します

  • 巴扎黑

    巴扎黑2017-04-17 15:40:59

    ajax が要求するデータの場合、大きく 2 つの考え方があります。

    1. 模擬ブラウザでアクセスします。具体的には、ブラウザ クローラー キーワードを Google でシミュレートできますが、それでも自分で練習する必要があります。

    2. 関連するインターフェイスを見つけてインターフェイスをクロールし、いくつかのリクエスト ヘッダーに注目します。

    返事
    0
  • 巴扎黑

    巴扎黑2017-04-17 15:40:59

    F12 は ajax リクエストを調べますが、ユーザー エージェント、リファラーなどの偽装に注意してください。
    ログイン許可が必要な場合は、ユーザーを識別するための Cookie を追加するだけで、1 つずつ試すことができます。
    CSRF 防御メカニズムがある場合は、隠された CSRF トークンを見つけてそれに添付するだけです。

    返事
    0
  • 阿神

    阿神2017-04-17 15:40:59

    上記のアイデアを補足する 2 つのアイデア

    ブラウザをシミュレートするには、通常、ノードには https://github.com/amir20/pha... などのいくつかのパッケージがあるヘッドレス ブラウザを使用できます。

    返事
    0
  • PHP中文网

    PHP中文网2017-04-17 15:40:59

    少なくとも、Baidu にアクセスして「質問の技術」を検索することをお勧めします。質問するときは、ただ話すだけです。

    返事
    0
  • 大家讲道理

    大家讲道理2017-04-17 15:40:59

    ファントムjs

    返事
    0
  • キャンセル返事