nodejs登陆模拟
2019独角兽企业重金招聘Python工程师标准>>>
nodejs 之模拟登录
最近看了 nodejs开发指南这本书,并参照着 nodejs.org官方网站中的 api,写了一个 模拟登录程序,其中有 北邮人论坛的,有 163邮箱的。其中前者 只需post就可以了,居然是明文传输,也不用https。后者选择了https,通过抓发分析,写了如下程序,另外,还学习了 通过Nodejs进行web开发,发现 nodejs真的很强大,是做服务器端开发的一款利器。
登录北邮人的程序:
- //**** 是北邮人的用户名 -----是密码
- //登录 北邮人论坛
- var http=require("http");
- var querystring=require("querystring");
- var contents=querystring.stringify({
- CookieDate:0,
- id:"****",
- mode:0,
- passwd:"-----"
- });
- var options={
- host:"bbs.byr.cn",
- path:"/user/ajax_login.json",
- method:"post",
- headers:{
- "Content-Type":"application/x-www-form-urlencoded; charset=UTF-8",
- "Content-Length":contents.length,
- "Accept":"application/json, text/javascript, */*; q=0.01",
- "Accept-Language":"zh-cn",
- "Cache-Control":"no-cache",
- "Connection":"Keep-Alive",
- · "Host":"bbs.byr.cn",
- "Referer":"http://bbs.byr.cn/index",
- "User-Agent":"Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0; BOIE9;ZHCN)",
- "X-Requested-With":"XMLHttpRequest"
- }
- };
- var req=http.request(options,function(res){
- res.setEncoding("utf8");
- res.on("data",function(data){
- console.log(data);
- });
- });
- req.write(contents);
- req.end();
登录163邮箱的程序:
登录成功之后,通过抓到的cookie和 跳转的url,就可以了,下面打印出了cookie头部信息
- //用户名 : *******
- //密码 :------
- var https=require("https");
- var querystring=require("querystring");
- var url="https://ssl.mail.163.com/entry/coremail/fcg/ntesdoor2?"+
- "df=webmail163&from=web&funcid=loginone&iframe=1&language=-1&net=c&passtype=1&product=mail163&race=-2_60_-2_hz&style=-1&uid=*******@163.com";
- var contents=querystring.stringify({
- savelogin:1,
- password:"------",
- url2:"http://mail.163.com/errorpage/err_163.htm",
- username:"*******"
- });
- var options={
- host:"ssl.mail.163.com",
- path:"/entry/coremail/fcg/ntesdoor2?df=webmail163&from=web&funcid=loginone&iframe=1&language=-1&net=c&passtype=1&product=mail163&race=-2_60_-2_hz&style=-1&uid=******@163.com",
- method:"post",
- headers:{
- "Content-Type":"application/x-www-form-urlencoded",
- "Content-Length":contents.length,
- "Accept":"text/html, application/xhtml+xml, */*",
- "Accept-Language":"zh-CN",
- "Cache-Control":"no-cache",
- "Connection":"Keep-Alive",
- "Host":"ssl.mail.163.com",
- "Referer":"http://mail.163.com/",
- "User-Agent":"Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0; BOIE9;ZHCN)"
- }
- };
- var req=https.request(options,function(res){
- res.setEncoding("utf8");
- var headers=res.headers;
- //console.log(headers);
- var cookies=headers["set-cookie"];
- cookies.forEach(function(cookie){
- console.log(cookie);
- });
- res.on("data",function(data){
- console.log(data);
- });
- });
- req.write(contents);
- req.end();
转载于:https://my.oschina.net/u/867090/blog/142477
nodejs登陆模拟相关推荐
- java 模拟天眼查登陆,模拟天眼查登陆问题
相信做爬虫的很多小伙伴一定会遇到很多滑块验证码的问题.在爬取天眼查的时候是要求需要登陆的.天眼查的滑块验证码可不可以解决呢?答案是一定可以的.今天我们就来聊聊类似天眼查这种滑块验证码的解决方案. 解决 ...
- 超详细的Python实现百度云盘模拟登陆(模拟登陆进阶) 1
这是第二篇从简书搬运过来的文章(大家别误会,是我原创的).因为前一篇文章,我看反响还挺好的,所以把这篇也搬运过来了,其实目的还是为宣传自己的分布式微博爬虫(该项目的内容和工作量都很饱满啊,大家如果觉得 ...
- Jmeter_前端RSA加密下的登陆模拟_引用js文件实现(转)
在一次项目实战中,前端登录使用了RSA加密,使用LoadRunner压测的第一步,就是模拟用户登录,可惜loadRunner11并不能录制前端的加密过程,并且安装的LR是基于C语言版,网络上关于RSA ...
- Java——异常登陆模拟
public class UserLogin {private String userName="admin";private String password="1234 ...
- 网络爬虫中的模拟登陆获取数据(实例教学1)
目录 模拟登陆的原因 如何模拟登陆 实战(demo) 模拟登陆的原因 很多网站,我们是无法直接获得服务器返回的数据,需要输入用户名及密码才能看到数据.如我们登陆人人网时,网站网址http://www. ...
- 爬虫实战3:模拟登陆知乎并爬取任意帖子数据
刚学爬虫时,看到一篇文章硬核破解知乎登陆,心潮澎湃,真男人!符合我的胃口!哼哧哼哧的立刻安排! (半个小时过后) 似乎我是弱智?很多看不懂?(百度乱搜中-)恩还有种简单的?sel ...
- 模拟登陆 Selenium
模拟登陆 使用爬虫实现登录操作.为何需要做模拟登陆? 有些平台只有登录之后才可以访问其内部其他的子页面.如何实现模拟登陆? 模拟点击登录按钮发起的请求即可 阻力:验证码的识别验证码识别 使用线上的打码 ...
- nodejs这个过程POST求
下面是一个web登陆模拟过程.当我们问一个链接,你得到一个表格,然后填写相应的表格值,然后提交登陆. var http = require('http'); var querystring = req ...
- 使用 AngularJS NodeJS 实现基于token 的认证应用(转)
认证是任何 web 应用中不可或缺的一部分.在这个教程中,我们会讨论基于 token 的认证系统以及它和传统的登录系统的不同.这篇教程的末尾,你会看到一个使用 AngularJS 和 NodeJS 构 ...
最新文章
- ubuntu su进入root权限
- springcloud 实战 feign使用中遇到的相关问题
- DELL R720 服务器 RAID阵列卡配置介绍
- 深入理解golang的defer
- C#设计模式之十五迭代器模式(Iterator Pattern)【行为型】
- 标准控件(二)——Calendar
- CVPR 2019 | 西北工业大学开源拥挤人群数据集生成工具,大幅提升算法精度
- MIT大牛Gilbert Strang新书:《线性代数与从数据中学习》抢先看
- 扇贝有道180920每日一句
- 算法分析之二叉树遍历
- 基于matlab 自适应滤波,基于Matlab的自适应滤波器的设计及仿真
- VMware虚拟机Mac OS X 扩展内存方法
- 还在手写记单词?使用Python开发练习英语单词,助你逆袭单词记忆王!
- 《重构》一书总结(二)
- 一文搭建Vuepress博客/文档系统:搭建,导出,SEO,自动编译和部署,域名,HTTPS,备案等
- R7-17 程序填空题2
- ​食品领域排名靠前的品牌咨询公司塔望/华与华等服务优势对比​
- VC++网络安全编程范例(1)--数字证书有效期验证
- Android网易新闻评论盖楼效果的实现
- 2021年安全员-A证(广西省-2021版)考试试卷及安全员-A证(广西省-2021版)作业考试题库
热门文章
- api php usdt 以太坊_以太坊智能地址PHP开发包【零GAS归集ERC20】
- cpu漏洞linux修复,【图片】为什么linux mint上cpu漏洞直到现在也没完全修复?_linux吧_百度贴吧...
- xms和xmx为什么要相同_股民为什么要做股票配资?
- mysql 聚合函数内比较运算符_关于常用 MYSQL 聚合函数,其他函数 ,类型转换,运算符 总结...
- qstring 属于元数据类型吗_元数据,描述“数据”的“数据”
- java的spinner_java中的spinner | 学步园
- 宿舍管理系统设计分析图
- inline-block清除空隙2
- 2017年游戏营收报告公布,谁是去年最大的赢家?
- crc32库 qt_Qt 打包32位库(包括WebEngineView)