大家用什么库来做爬虫啊?
发布于 10 年前 作者 ystyle 5986 次浏览 最后一次编辑是 8 年前 来自 问答

因为会点其它语言,其它语言我用的是unirest 最近在学nodejs , 因为unirest也支持nodejs平台 但一测了很久,都没模拟登陆成功,

var unirest = require('unirest'),
    baseURL = "baseurl";
unirest.post(baseURL + "/Login")
    .field('username', 'user') // Form field
    .field('password', '******') // Form field
    .field('remembername', '1') // Form field
    .jar(true)
    .end(function (response) {
        console.log(response.body);
        var cookies = response.cookies;
        console.log(cookies);
        unirest.get(baseURL + 'ProjectIndex')
            .header("Cookie", cookies)
            .end(function (data) {
                console.log(data.body);
            });
    });

这样一直访问不到项目列表页,看返回的数据登陆是成功的

9 回复

换了个网站就可以了,这样用法是没问题的 有些网站的问题,不知道为什么

@ystyle 一直用 casperjs ,可以试试

spidex

比较简单轻量的 http 请求库。

@DavidCai1993 这东东是个内存版的浏览器?

@ystyle 嗯可以想象成这就是一个基于WebKit内核的浏览器

@DavidCai1993 感觉不会用的样子,拷了个示例…然后 npm install -g casperjs

workspace git:(master) ✗ node test.js
module.js:338
throw err;
^
Error: Cannot find module 'casper’
at Function.Module._resolveFilename (module.js:336:15)
at Function.Module._load (module.js:278:25)
at Module.require (module.js:365:17)
at require (module.js:384:17)
at Object.<anonymous> (/home/coding/workspace/test.js:1:76)
at Module._compile (module.js:460:26)
at Object.Module._extensions…js (module.js:478:10)
at Module.load (module.js:355:32)
at Function.Module._load (module.js:310:12)
at Function.Module.runMain (module.js:501:10)
➜ workspace git:(master) ✗ casperjs test.js
zsh: command not found: casperjs
➜ workspace git:(master) ✗

@ystyle 其实示例里后面也有写,在命令行输入casperjs text.js来运行。。它有自己的命令 自豪地采用 CNodeJS ionic

@DavidCai1993 这样说就不能用在项目里了?

@ystyle 提供一个思路

var exec = require('child_process').exec;
exec('casperjs xxx.js',function(){...});
回到顶部