Atitit 爬虫 node版 attilaxA
Atitit 爬虫 node版 attilax
1.1. 貌似不跟python压实,,java的webmagic压实,,什么爬虫框架也没有,只好自己写了。
查了百度三爷资料也没有。都是自己写。。
1.2. 爬虫算法 调用http模块获取内容。
算去时间戳作为文件名tag部分。。
调用Io模块,保存为文件
1.3. C:\0workspace\atiplat_spider\com.attilax\spider\orgSpd.js
/**
* Created by Administrator on 2017/1/14.
*/
var sys = require("util");
var fs = require('fs');
sys.log("Hello world");
var https = require('http');
function getUrls()
{
var urls=new Array();
for(var i=1;i<100;i++)
{
var reqdata_str="orgName=&corporateType=1&managerDeptCode=®istrationNo=&unifiedCode=&order=registrationDate&legalName=&page_flag=true&pagesize_key=result&goto_page=next¤t_page=@page@&total_count=1938&to_page=";
reqdata_str=reqdata_str.replace("@page@",i);
urls.push(reqdata_str );
}
return urls;
}
//main
var urls=getUrls();
var cnt=0;
for(idx in urls)
{
var url=urls[idx];
console.log("url:"+url);
cnt++;
req(url,cnt);
}
function req(reqdata_str,page)
{
var reqData={
order:'registrationDate',
corporateType:'1',
current_page:'4',
page_flag:true,
pagesize_key:'result',
goto_page:'next',
total_count:1938,
orgName:'',
managerDeptCode:'',
registrationNo:'',
unifiedCode:'',
legalName:'',
to_page:''
};
var data_str= JSON.stringify (reqData);
sys.log("--reqData.length:"+data_str.length);
//var reqdata_str="orgName=&corporateType=1&managerDeptCode=®istrationNo=&unifiedCode=&order=registrationDate&legalName=&page_flag=true&pagesize_key=result&goto_page=next¤t_page=3&total_count=1938&to_page=";
var post_options = {
host: 'www.chinanpo.gov.cn',
port: '80',
path: '/search/searchOrgList.do?action=searchOrgList',
method: 'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded',
'Content-Length':reqdata_str.length,
'Origin':'http://www.chinanpo.gov.cn',
'Referer':'http://www.chinanpo.gov.cn/search/searchOrgList.do?action=searchOrgList',
'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.106 Safari/537.36',
'Upgrade-Insecure-Requests':1
// 'Cookie':'chinanpojsessionid=C5B432F4A8100CFA5803EA018A8B4AEC; _gscu_815174165=84382222mstxh112; _gscs_815174165=t84402470rmeenn15|pv:2; _gscbrs_815174165=1; Hm_lvt_3adce665674fbfb5552846b40f1c3cbc=1484382201; Hm_lpvt_3adce665674fbfb5552846b40f1c3cbc=1484403650'
}
}; //poost opt end
var post_req_ClientRequest=https.request(post_options, function(res) {
console.log("statusCode: ", res.statusCode);
// console.log("headers: ", res.headers);
var html = '';
res.on('data', function(d) {
// process.stdout.write(d);
html += d;
});
res.on('end', function(data) {
save(html,page);
})
}).on('error', function(e) {
console.error(e);
});
// post the data
post_req_ClientRequest.write(reqdata_str);
//https.write(reqData);
post_req_ClientRequest.end();
}
function getTimestamp()
{
var timestamp = (new Date()).valueOf();
return timestamp;
}
function save(html,page)
{
console.log('start save!')
// ��ץȡ�����ݱ��浽�����ļ���
fs.writeFile('c:\\00orgSave\\index_P'+page+"_"+getTimestamp()+'.html', html, function(err) {
if (err) {
console.log('���ִ���!')
}
console.log('�������index.html��')
})
}
作者:: 绰号:老哇的爪子claw of Eagle 偶像破坏者Iconoclast image-smasher
捕鸟王"Bird Catcher 王中之王King of Kings 虔诚者Pious 宗教信仰捍卫者 Defender Of the Faith. 卡拉卡拉红斗篷 Caracalla red cloak
简称:: Emir Attilax Akbar 埃米尔 阿提拉克斯 阿克巴
全名::Emir Attilax Akbar bin Mahmud bin attila bin Solomon bin adam Al Rapanui 埃米尔 阿提拉克斯 阿克巴 本 马哈茂德 本 阿提拉 本 所罗门 本亚当 阿尔 拉帕努伊
常用名:艾提拉(艾龙), EMAIL:1466519819@qq.com
头衔:uke总部o2o负责人,全球网格化项目创始人,
uke宗教与文化融合事务部部长, uke宗教改革委员会副主席
,Uke部落首席大酋长,
uke制度与重大会议委员会委员长,uke保安部首席大队长,uke制度检查委员会副会长,
uke 首席cto 奶牛科技首席cto , 软件部门总监 技术部副总监 研发部门总监主管 产品部副经理 项目部副经理
uke波利尼西亚区大区连锁负责人 汤加王国区域负责人。
uke克尔格伦群岛区连锁负责人,莱恩群岛区连锁负责人,
uke布维岛和南乔治亚和南桑威奇群岛大区连锁负责人
Uke软件标准化协会理事长理事长 uke终身教育学校副校长
Uke 数据库与存储标准化协会副会长 uke出版社编辑总编
Uke医院 与医学院方面的创始人
Uke 户外运动协会理事长 uke交友协会会长
转载请注明来源:attilax的专栏 ?http://www.cnblogs.com/attilax/
--Atiend
Atitit 爬虫 node版 attilaxA的更多相关文章
- 区划代码 node 版爬虫尝试
前言 对于区划代码数据,很多人都不会陌生,大多公司数据库都会维护一份区划代码,包含省市区等数据.区划信息跟用户信息息息相关,往往由于历史原因很多数据都是比较老的数据,且不会轻易更改.网上也有很多人提供 ...
- node爬虫进阶版
手写了一个方便爬虫的小库: const url = require('url') const glib = require('zlib') //默认头部 const _default_headers ...
- 百度翻译爬虫-Web版(自动生成sign)
# 面向对象 # 百度翻译 -- 网页版(自动获取token,sign) import requests import js2py import json import re class WebFan ...
- 用Python写网络爬虫 第二版
书籍介绍 书名:用 Python 写网络爬虫(第2版) 内容简介:本书包括网络爬虫的定义以及如何爬取网站,如何使用几种库从网页中抽取数据,如何通过缓存结果避免重复下载的问题,如何通过并行下载来加速数据 ...
- python爬虫beta版之抓取知乎单页面回答(low 逼版)
闲着无聊,逛知乎.发现想找点有意思的回答也不容易,就想说要不写个爬虫帮我把点赞数最多的给我搞下来方便阅读,也许还能做做数据分析(意淫中--) 鉴于之前用python写爬虫,帮运营人员抓取过京东的商品品 ...
- 百度图片爬虫-python版-如何爬取百度图片?
上一篇我写了如何爬取百度网盘的爬虫,在这里还是重温一下,把链接附上: http://www.cnblogs.com/huangxie/p/5473273.html 这一篇我想写写如何爬取百度图片的爬虫 ...
- windows 下node版管理
linux 下的node 多版本管理有nvm,windows 下同样有这样的工具gnvm 安装步骤(无node环境): 1.下载并解压缩 gnvm.exe 保存到任意文件夹,并将此文件夹加入到环境变量 ...
- SuperSpider(简书爬虫JAVA版)
* 建站数据SuperSpider(简书)* 本项目目的:* 为练习web开发提供相关的数据:* 主要数据包括:* 简书热门专题模块信息.对应模块下的热门文章.* 文章的详细信息.作者信息.* 评论区 ...
- Node教程——API接口开发(Node版的CRUD通用接口的搭建)(MangoDB+Express_Version2)
1. 概述 时间跨度有点大,之前就跟大家唠嗑过一些知识点,也开启了一个Node书写一个后台api项目的开始,出于各种原因,迟迟没有更新博文.现在我把这个坑填上,如果你还有阅读过我之前的文章,我建议你先 ...
随机推荐
- 一张图弄明确开源协议-GPL、BSD、MIT、Mozilla、Apache和LGPL 之间的差别
导读 在开源软件中常常看到各种协议说明.GPL.BSD.MIT.Mozilla.Apache和LGPL. - 这些协议之间的有什么差别 - 怎样选择合适的开源协议 请看下文,特作记录一篇,以供兴许查看 ...
- 〖Linux〗Linux高级编程 - 进程间通信(Interprocess Communication)
[转自: http://blog.csdn.net/Paradise_for_why/article/details/5550619] 这一章就是著名的IPC,这个东西实际的作用和它的名字一样普及.例 ...
- JAVA识别字符串是数字(英文)还是汉字,web页面进行字符截断的帮助类
public static void main(String[] args) { //长度是2说明是英文/数字/英文状态下的字符,长度为4说明是汉字/中文状态下的字符 String str = &qu ...
- Windows在cmd杀掉进程
问题描述: 在windows根据pid杀进程 问题解决: tasklist查看当前系统中的进程列表,然后针对你要杀的进程使用taskkill命令 #根据服务名taskkill /im nginx.ex ...
- 微信小程序开发学习资料
作者:初雪链接:https://www.zhihu.com/question/50907897/answer/128494332来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明 ...
- iOS如何在iTunes网站查看并下载APP的dsym文件
有时需要拿到app的dsym符号表文件,恰巧本地的构建版本文件已经不在了,那么我们还可以在iTunes那边获取到. 步骤不复杂: 1.登陆itunes网站 https://itunesconnect. ...
- java hibernate session create
public class RegisterStory { private SysUserCDao sysUserCDao; @Test public void test() { SessionFact ...
- [转]2016年linux运维人员必会开源运维工具体系
linux运维人员必会开源运维工具体系 说明:不同的技术人员,不同的阶段确定知识边界非常重要,否则,就像马拉车,不知道终点在哪,累死也达不到目标.例如拿8K要学多少,拿15K要学多少.一个新手也许只想 ...
- Webdriver设置Firefox自动下载
看到很多人在firefox上操作下载窗口用autoit,太麻烦了,提供一种用profile来解决的办法: FirefoxProfile profile = new FirefoxProfile(); ...
- STAF进行分布式脚本分发----实践篇
该博文理论支持文章:http://www.cnblogs.com/zhangfei/p/3169139.html 一.准备条件 1.安装STAF.由于其官网被墙了,所以大家可进入WAT群的网盘里去下载 ...