跳到主要内容
CNode

node模拟登陆有人有实例吗?

问答
BbigMuffin发布于 12 年前最后回复 12 年前
2473350

想抓取一个网站的数据,但是网站要登陆。登陆内容有 用户名+密码+验证码(ashx) 现在我会请求网页数据了。但是那个页面需要登录。http://vip.311st.com/login.aspx就是这个网站 我想分析游乐场里面的页面数据。就是模拟登陆不知道怎么弄。想就问问大家

查看回复

回复 (24)

H
halfcrazy#2412 年前
Z
zhouseahe#2212 年前
引用 bigMuffinvar http = require('http'); var request = require('request'); http.createServer(function(req, re...

@bigMuffin 这个代码应该是可以的,但是你要读图片,就会麻烦点, 你直接手动登录,然后把cookie 写到文件,应用抓数据的时候再去文件读cookie

K
kiroChen#2112 年前

用caspter.js。

B
bigMuffin#2012 年前
引用 captainblue2013这个不擅长

@captainblue2013 感谢帮顶。

C
captainblue2013#1912 年前

这个不擅长

B
bigMuffin#1812 年前

上面的是我在网上找的代码。因为我初学node,很多都不是很懂。所以想请教大家。

B
bigMuffin#1712 年前

var http = require('http'); var request = require('request'); http.createServer(function(req, res) { /* GET req page. */ request ({ uri: 'http://www.geibi.com/index.aspx', //构建请求 encoding: null, //不转码 headers: { Cookie: '0u4qj3wphktrnzrcw3kknn3y' //这里是关键,设置Cookie为之前请求到的以Cookie形式呈现的SessionID } }, function(err, res, body) { //获取响应即可 if (err) { console.log('Server Error'+err.message); } }); }).listen(3002, '127.0.0.1'); console.log('服务运行在http//:127.0.0.1:3002/');

但是不行。我不知道为什么。

Z
zhouseahe#1512 年前

cookie 方便快捷 刚看了下那个验证码, ocr 处理比较容易啊

C
coolicer#1412 年前
引用 bigMuffin@coolicer 这一步求指教。如何取得session cookie?

@bigMuffin 楼上说叫你直接拿来用,因为你登录之后已经生成一条cookie

B
bigMuffin#1312 年前
引用 coolicer@bigMuffin 登录后会产生session cookie,你没有

@coolicer 这一步求指教。如何取得session cookie?

A
alsotang#1212 年前

在浏览器里面登陆之后,把 cookie 拿出来用不就好了吗? 反正写的是爬虫,这么干方便快捷

B
bigMuffin#1012 年前
B
bigMuffin#812 年前
引用 coolicer@bigMuffin 你还有一个难点,就是要知道图片验证码。

@coolicer 是啊。那个可以从网页上直接显示不?然后我自己输入?可行吗?

C
coolicer#712 年前
引用 bigMuffin@coolicer 居然就是这个地址http://vip.311st.com/login.aspx

@bigMuffin 你还有一个难点,就是要知道图片验证码。

C
coolicer#412 年前

下载fiddler,跟踪一下登录。看看提交到哪个地址之类的吧。

B
bigMuffin#312 年前
引用 TimothyJinphantomjs

@TimothyJin 需要登陆怎么破?

T
TimothyJin#212 年前

phantomjs

B
bigMuffin#112 年前

在线等。

参与回复

登录后即可参与回复。登录