如果你经常使用网络爬虫,那么你一定会面临被封锁 IP 的问题。此时,你需要使用代理 IP 来解决这个问题。 如何获取可靠的代理 IP 呢?此时介绍一个 npm 包 proxydb
。
什么是 proxydb?
proxydb
是一个可以在 Node.js 环境下使用的免费代理 IP API,该服务的一些实现基于 Scrapy 和公共互联网标准。他提供了一个快速而简单的方式来获取 HTTP、HTTPS 和 SOCKS4/5 代理 IP 地址。其数据库中包含来自世界各地的多个HTTP、HTTPS、socks4和socks5代理服务器。
如何使用 proxydb?
安装
在 Node.js 环境下使用 npm 可以快速安装proxydb
:
npm install proxydb
获取代理IP
使用proxydb
获取代理 IP 非常简单,下面是两个简单的示例:
获取一个 HTTP 代理
-- -------------------- ---- ------- ----- ------- - ------------------- ----- ------- - --- ---------- ----- -------- -------------- - ----- ------- - ----- -------------------- -------- --- -- ---- ------ -- -- ---- -- -- ---------- --------- -- ----------- ----------------- - ------ --- ------ -------------------- -- ------ -
获取一个 SOCKS5 代理
-- -------------------- ---- ------- ----- ------- - ------------------- ----- ------- - --- ---------- ----- -------- ---------------- - ----- ------- - ----- -------------------- -------- --- -- ---- ------ -- -- ---- -- -- ---------- ----------- -- ----------- ----------------- - ------ --- ------ -------------------- -- ------ -
连接爬虫
在使用代理访问目标网站时,需要提供对应的代理链接,在 axios 请求头中添加 proxy
,代码示例如下:
-- -------------------- ---- ------- ----- ----- - ----------------- ----- -------- - ----- --------------- ----- ------- - - -------- - ------------- ------------ -------- -- ----- ------ ---- -------- -------------- -------------- ------------------ ----------------- ------------------ ------ -------- ---- ----------- ------------- -------- -------------------------- ---------------------------- -- ---------------- ------------ ------- --------------------------------- ---------------------------------- -- ------ - ----- ----------------------- ----- ----------------------- ----- - --------- ----------- --------- ----------- -- -- -- ----- -------- - ----- ------------------------------------ --------- -----------------------------
结论
proxydb
是一个免费获取代理 IP 的好选择,使用简单方便,同时可以免去写代理 IP 采购的烦恼,不过请注意合理使用,不要过度频繁地访问该服务。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6006725e3660cf7123b36404