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