爬虫学习之股票信息的获取
之前研究数据,零零散散的写过一些数据抓取的爬虫,写的都比较简单随意。有很多地方现在看起来并不是很合理,刚好今天有空,索性重新写了一个项目,就是本项目用 nodejs语言采集股票信息。这个爬虫还是比较简单的类型, 就是直接抓取页面,然后在页面中提取数据,保存数据到数据库,这里我们以东方财富为例,通过odejs语言采取信息,获取每只股票的总市值、 净资产、 利润等
东方富网址:http://quote.eastmoney.com/stocklist.html
简单的代码示例
const http = require("http");
const url = require("url");
// 要访问的目标页面
const targetUrl = "http://quote.eastmoney.com/stocklist.html";
const urlParsed = url.parse(targetUrl);
// 代理服务器(产品官网 www.16yun.cn
)const proxyHost = "t.16yun.cn";
const proxyPort = "36600";
// 生成一个随机 proxy tunnelvar seed = 1;
function random() { var x = Math.sin(seed++) * 10000;
return x - Math.floor(x);}const tunnel = random()*100;
// 代理验证信息
const proxyUser = "username";
const proxyPass = "password"
;const base64 = new Buffer.from(proxyUser + ":" + proxyPass).toString("base64");
const options = { host: proxyHost, port: proxyPort, path:
targetUrl, method: "GET", headers: { "Host": urlParsed.hostname,
"Proxy-Tunnel": tunnel,
"Proxy-Authorization" : "Basic " + base64 }};
http.request(options, function (res) { console.log("got response: " + res.statusCode);
res.pipe(process.stdout);
}).on("error", function (err) {
console.log(err);}).
end();
爬虫学习之股票信息的获取
xiaotaomi
会员积分:6520
之前研究数据,零零散散的写过一些数据抓取的爬虫,写的都比较简单随意。有很多地方现在看起来并不是很合理,刚好今天有空,索性重新写了一个项目,就是本项目用 nodejs语言采集股票信息。这个爬虫还是比较简单的类型, 就是直接抓取页面,然后在页面中提取数据,保存数据到数据库,这里我们以东方财富为例,通过odejs语言采取信息,获取每只股票的总市值、 净资产、 利润等
东方富网址:http://quote.eastmoney.com/stocklist.html
简单的代码示例
const http = require("http");
const url = require("url");
// 要访问的目标页面
const targetUrl = "http://quote.eastmoney.com/stocklist.html";
const urlParsed = url.parse(targetUrl);
// 代理服务器(产品官网 www.16yun.cn
)const proxyHost = "t.16yun.cn";
const proxyPort = "36600";
// 生成一个随机 proxy tunnelvar seed = 1;
function random() { var x = Math.sin(seed++) * 10000;
return x - Math.floor(x);}const tunnel = random()*100;
// 代理验证信息
const proxyUser = "username";
const proxyPass = "password"
;const base64 = new Buffer.from(proxyUser + ":" + proxyPass).toString("base64");
const options = { host: proxyHost, port: proxyPort, path:
targetUrl, method: "GET", headers: { "Host": urlParsed.hostname,
"Proxy-Tunnel": tunnel,
"Proxy-Authorization" : "Basic " + base64 }};
http.request(options, function (res) { console.log("got response: " + res.statusCode);
res.pipe(process.stdout);
}).on("error", function (err) {
console.log(err);}).
end();
21-03-18 17:29
2557
0
回复
暂无评论