WIpProxy

WIpProxy

new WIpProxy(optopt) → {Object}

Description:
  • 抓取代理伺服器

Source:
Example
import _ from 'lodash-es'
import wip from './src/WIpProxy.mjs'

let wo = wip({
    // tar: `https://api.binance.com/api/v3/ticker/price?symbol=BTCUSDT`,
    withServer: true,
    serverPort: 9000,
    serverCorsOrigins: ['*'],
})
wo.on('getRawProxies', (prxsRaw) => {
    console.log(`已抓取公開代理共 ${_.size(prxsRaw)} 個...`)
})
wo.on('add', (p, proxies) => {
    // console.log('新加入代理', { host: p.host, port: p.port }, _.map(proxies, 'proxy'))
})
wo.on('delete', (p, proxies) => {
    // console.log('刪除代理', { host: p.host, port: p.port }, _.map(proxies, 'proxy'))
})
wo.on('change', (proxies) => {
    // console.log(`有效代理`, _.map(proxies, 'proxy'))
    console.log(`已檢測有效代理共 ${_.size(proxies)} 個...`)
})

//browser view: http://localhost:9000/getProxies
Parameters:
Name Type Attributes Default Description
opt Object <optional>
{}

輸入設定物件,預設{}

Properties
Name Type Attributes Default Description
src String <optional>
'https://api.proxyscrape.com/v2/?request=displayproxies&protocol=http&timeout=5000&anonymity=all'

輸入取得代理伺服器API字串,預設'https://api.proxyscrape.com/v2/?request=displayproxies&protocol=http&timeout=5000&anonymity=all'

tar String <optional>
'https://httpbin.org/ip'

輸入檢測目標網址字串,預設'https://httpbin.org/ip'

timeGetProxies Integer <optional>
30*1000

輸入輪循抓取代理伺服器時間間隔整數,單位ms,預設30*1000

timeTestProxies Integer <optional>
60*1000

輸入輪循測試代理伺服器時間間隔整數,單位ms,預設60*1000

withServer Boolean <optional>
false

輸入是否創建供數據供給伺服器布林值,預設false

serverPort Integer <optional>
8080

輸入創建伺服器所用port整數,預設8080

serverApiName String <optional>
'getProxies'

輸入供給數據API名稱字串,預設'getProxies'

serverCorsOrigins Array <optional>
['*']

輸入允許跨域網域陣列,若給予['']代表允許全部,預設['']

Returns:

回傳事件物件,提供函數getProxies,可監聽事件getRawProxies、add、delete、change

Type
Object