如何用node.js爬取动态数据
大家讲道理
大家讲道理 2017-04-17 15:38:59
0
5
420

如何爬取动态数据,就是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,但是如何爬取这样的数据

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全員に返信(5)
巴扎黑

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

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

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

いいねを押す +0
巴扎黑

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

いいねを押す +0
阿神

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

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

いいねを押す +0
Ty80

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

いいねを押す +0
大家讲道理

ファントムjs

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート