在互联网时代中,网络爬虫的也成一个重要的行业。在使用爬虫也许多语言提供选择。也python JAVA 语言成了大众爬虫的一致选择。当然在爬虫研发中,数据解析 数据存储也成了重要的一部分。而存储也有很多种方式,例如文件存储、数据库存储、搜索引擎存储、云存储
1、文件存储
可以利用JSON 、CSV等一些常见的库、存储成文件格式。
JSON存储是一种数据替换的模式。利用语言的文本格式在存储,更加清楚简单,有效率的传输文件数据。
CSV存储,python爬虫可以利用CSV进行文件存储更加简单的观察数据。
2、数据库存储
数据库存储常见的库有MySQL数据库、Mongdb数据库、Redis数据库等
MySQL、Mongdb、Redis数据库存储方式是python爬虫中最常见的几种方式。这几种的存储方式的好处是方便简单,速度快。
网络爬虫中有许多存储方式,如果一个IP长时间访问必然会被限制,这时候就需要使用代理IP来解决问题。
const http = require("http");
const url = require("url");
// 要访问的目标页面
const targetUrl = "http://httpbin.org/ip";
const urlParsed = url.parse(targetUrl);
// 代理服务器(产品官网 www.16yun.cn)
const proxyHost = "t.16yun.cn";
const proxyPort = "36600";
// 生成一个随机 proxy tunnel
var 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();
|