{"_id":"ppspider","_rev":"140-44ecfe561643a4ec029389fea42c348e","name":"ppspider","dist-tags":{"latest":"2.2.4-preview.1607350101966"},"versions":{"0.0.1":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"version":"0.0.1","scripts":{"auto build":"tsc"},"dependencies":{"later":"^1.2.0","puppeteer":"^1.2.0","typescript":"^2.7.2"},"devDependencies":{"@types/node":"^9.4.7","@types/puppeteer":"^1.2.0"},"_id":"ppspider@0.0.1","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-WMUdo/ZkFHcPdmty4ralMBYGqJkWX5rvoTy9U9GdGqxf+dePYNI1JvnTc1Uz/OFCh4Irphe2VKdDq9JFmZYG1g==","shasum":"ed6c8e0a82c93681c6bf3221105c686d4721341d","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-0.0.1.tgz","fileCount":140,"unpackedSize":247111,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDs9x5lg1HTQAr3prVx/HCgXXnY6jvi9Z9J45BDgWNguAiBfkyW8FyuJDutrY1Ko/3FWQRWg0AKGCHheT1sjiH0gVw=="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_0.0.1_1522290025243_0.1614513353011262"},"_hasShrinkwrap":false},"0.0.2":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"version":"0.0.2","scripts":{"auto build":"tsc"},"dependencies":{"later":"^1.2.0","puppeteer":"^1.2.0","typescript":"^2.7.2"},"devDependencies":{"@types/node":"^9.4.7","@types/puppeteer":"^1.2.0"},"_id":"ppspider@0.0.2","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-+/Md2lJ99R21ppW5M1QZAzJ+gb4tJ8DL/f2pJI8/QUv6Q2Uy+ZTZY2+Twj5man+z1Zj/mUL6FRLtlBdKOgA9iw==","shasum":"5cf0e5c062549adbb7517589bac67a5b61fc5bed","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-0.0.2.tgz","fileCount":72,"unpackedSize":106850,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBcsXP/IOGUyXlJ1GgMgYD202+2WcY/Mqme2MOdbVZKgAiBwD4Vahd1yyQal4FEb3l0/FyGLHVZfzQce9i4rcByicA=="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_0.0.2_1522294360972_0.17330100989055786"},"_hasShrinkwrap":false},"0.0.3":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"version":"0.0.3","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc"},"dependencies":{"later":"^1.2.0","puppeteer":"^1.2.0","typescript":"^2.7.2"},"devDependencies":{"@types/node":"^9.4.7","@types/puppeteer":"^1.2.0"},"_id":"ppspider@0.0.3","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-KPJfn2dFbUbLXRzGbkDy9BCb9g1DL7pxLLCHVxvRqU9LfR8Yt4pz0/8h9hNierLHI+dut1IsMAJg/56Z732XnA==","shasum":"f9656b8731fd644f3154cb0823dd9ae330895385","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-0.0.3.tgz","fileCount":107,"unpackedSize":176311,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBbUrr1/2WB/j+fiFmtQ/VVHmrKVc39DRj7X8sjBaKKJAiEA+X/8zSEz0xcLRdtEER3TxagaBNur4DMG13dqKV+qO7k="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_0.0.3_1522310641713_0.3122982437908761"},"_hasShrinkwrap":false},"0.1.0":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"0.1.0","description":"spider build with puppeteer","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc"},"keywords":["spider"],"license":"MIT","dependencies":{"express":"^4.16.3","later":"^1.2.0","nedb":"^1.8.0","puppeteer":"^1.2.0","request":"^2.85.0","socket.io":"^2.1.1","typescript":"^2.7.2"},"devDependencies":{"@types/express":"^4.11.1","@types/jquery":"^3.3.1","@types/nedb":"^1.8.5","@types/node":"^9.4.7","@types/puppeteer":"^1.2.0","@types/request":"^2.47.0","@types/socket.io":"^1.4.33"},"gitHead":"343a083193ab60cfb06952789d50d84352e53c15","_id":"ppspider@0.1.0","_npmVersion":"5.6.0","_nodeVersion":"10.1.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-1RnnzML9zs4cvIStyAl+j7i6RhQ4cxf+oPwuhGleOOslIgybPqkSPHPNZHP/M/tiWfqtBEC/CpKgi8MGJ1Eqdw==","shasum":"3e352e4f37bd25b13c7942dafc7c055a73f933b1","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-0.1.0.tgz","fileCount":171,"unpackedSize":4286058,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbGqIACRA9TVsSAnZWagAAwfgP/j0zLxW0xq5Cdn6Dlxd6\nqGQgPK59MKfSetmYiQVxsiXpCacSdphN4c/ezJe01DMDrHWyy7wFiMiK0SnJ\n5MMKe9ze18g4Us/gNDtRpQ3KBJqMP3UE7ky5I7zvWHSzHG3ZxsR1Tt0sc8/g\nlurZJqIEvqMKTPVj/Zgi3DpOtbngb/c7C534ECdfqFi4yvQPYtSyoYOwsMZL\nSWjfiR4nPx9cGx4J1BCjz1ps/v8oYZ6y2Suryvc8DKXU0+/Me4InntM/t6yr\niZvJh9CsHNVmcdVvgNlY+YWkeSKT/dhupLxa3fYPNtmD3MrO35Er6wBxBzLL\nWhKsFH2eyQzVWs0ezaho2ocqkKAClhy5uwCRity3qu/FpMALEvC+YAz2x+Mr\nZ2nYMQVlONjapY61qM2ju0A/O2NFnt0+fl/mO3HDgSvPeQovt1uVP0kKbz7e\n7pMx1lkgAA3HKWuGVtHbSauwbwn1Uklb7JWCcAnaLC5b5fCyetvvoP/SoKzo\nB41jdlgL+9I1osJ5s7rkdMgqKT1kT6N7a/uwKwyiJJ+ynUYS/MyfTviC5YXe\nCtPGI3qNfIZGx5YTjMzV75enEdLKpJpvTWNPvYatAteog7ELdhxsinqOj9mM\n0nBrrjL9kiGRnO7BzZqguCue59BrJTgEUtr7dYyqW7D2/RV6qirzwz3xYejh\n9S/k\r\n=SeIt\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFuGqxqpkRZvuqa7GPBoH9HbXJAeX6KXDdi5yXSKkyx1AiEAixAabONAUcdwhL8AN/NvjonlmNNEehymN2s8iziExos="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_0.1.0_1528472063719_0.5185620685629959"},"_hasShrinkwrap":false},"0.1.3":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"0.1.3","description":"spider build with puppeteer","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.cn.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer"],"license":"MIT","dependencies":{"express":"^4.16.3","later":"^1.2.0","nedb":"^1.8.0","puppeteer":"^1.2.0","request":"^2.85.0","socket.io":"^2.1.1","typescript":"^2.7.2"},"devDependencies":{"@types/express":"^4.11.1","@types/jquery":"^3.3.1","@types/nedb":"^1.8.5","@types/node":"^9.4.7","@types/puppeteer":"^1.2.0","@types/request":"^2.47.0","@types/socket.io":"^1.4.33","markdown-toc":"^1.2.0"},"gitHead":"2473bdcdafc159768b2de9e592cadf5eeb69dc1e","_id":"ppspider@0.1.3","_npmVersion":"5.6.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-Gsncz52P4qxl3xk1tFToC+/DHHW+Cz8WAM5+aWpFAdjhINwGkGUqnxnzPnJYEY0UJZuCydbiiEb6MojSjIUr5g==","shasum":"04d4abf2ae55ebe10d4c9242315bda6c75065cb7","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-0.1.3.tgz","fileCount":153,"unpackedSize":1681202,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbIOwZCRA9TVsSAnZWagAAFSAP/R3uVCtpVq6eFjs5EnB5\nlfTjfAhzdZDmyrd4hE72a3qDOy2rKNfH7vbyJfWtx6ya/xe4Qa8lRSCPrK8G\n2ZqKBbIB2ULDBYVb5mIj80kSqxawHzzHpEoztKAWVCWeXIPmuLnLBrGkw37s\n51L4smtURCh067V6iHINDN9OFw9jIxwOwqBZy2pkZCz1lo5QL8HWGL2p45Sj\n70Z/77s7XArd97qV6OlFtNvElJvmrian13U6IJOafIZsBIE+4MIA5/1We2Dy\nJJ5VdZkwOhVkmfzKAnpM9UiKit4qz8McmpkgHhv3oVNXa2umj/JT+aKXCf8x\nNl4khNGvR4y0nN1ZKrJ115A8cAFfGFJMczE53HnnYAIookIV8ZWdHY9imABT\nHQ0IGRjwAzIClK6qaEoEC4QvY2KdsYP06NL2l+unXDoKmpn1oZrvGopurdyv\nMx4ms/I7bPc2AfqesrX81uTCER7JdqpPQCrvA4IjDL7rkkjD/nNtdoDM+5Wi\neOosvqd1HSTpcwO+EqlWL32IY97lGCq/vMH0hMBJmkMCzqTP20caSWURXSkJ\ncp/GgvypIeZf6JCPXkRQa/MxOhEuqlapUmTEswLE2Int6hj4SBlNqyKfKWNL\n73sv+z+nE90oBHXFpxy16D3nRf+w1cwQ4K1FZJQfznPv/f5QFzZjqlFmODpW\nPgHe\r\n=j5Wk\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDw2YM3/k2RNWR846vZT3TFZeHjbVmQV0DqyDSLNuaHKgIhAKf7iJFtk0zISLUMYkXbo/RvBSIVpgXWGZPhcjyPdX9N"}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_0.1.3_1528884248113_0.8475009420774049"},"_hasShrinkwrap":false},"0.1.6":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"0.1.6","description":"spider build with puppeteer","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.cn.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer"],"license":"MIT","dependencies":{"express":"^4.16.3","later":"^1.2.0","nedb":"^1.8.0","puppeteer":"^1.2.0","request":"^2.85.0","socket.io":"^2.1.1","typescript":"^2.7.2"},"devDependencies":{"@types/express":"^4.11.1","@types/jquery":"^3.3.1","@types/nedb":"^1.8.5","@types/node":"^9.4.7","@types/puppeteer":"^1.2.0","@types/request":"^2.47.0","@types/socket.io":"^1.4.33","markdown-toc":"^1.2.0"},"gitHead":"3a5a3e8ab89d34f7bf2119cdca301a626fb3c5ef","_id":"ppspider@0.1.6","_npmVersion":"5.6.0","_nodeVersion":"10.1.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-oP9FZ4TCwudo1m6xH9nsfPBW1GLPTC5RB5DjbZQ2ra8G6g05ppBT8kf1zXGfCM9PqRBH8QLO2VqM6xLVE1o7kg==","shasum":"fd7986aada4f730b33c5f9ea95a28e9fd8ebb605","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-0.1.6.tgz","fileCount":150,"unpackedSize":1693459,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbJIjvCRA9TVsSAnZWagAAO34QAJ2ARTr97RvfITBRkv8X\nE5HenG8vXuSW2UJ/Mq/Dcrj6E1zKS0rUDQEbrOi7AKgBz7aZYken6+6+WNzA\nN6hBI93CdyI9mHMLXPaLPHCDBwz9C4JdxvodazgUZRSOurcZKZAe8pOQ6VZp\nFTry4lcrFSPJU+LyWLRpg7L/Zt7tYvdfUZ//H/6KdENhTaST8o/djAl6W/nI\n9Xlh1vPIGH+mySb0njLTJuQwX/oLRWHTA3udCZt4xDZrgp4FxAOI5wdSsx7G\n69s2uzXGmOwZ51qPdr4Nt0b3ayjGEDUILBBURD5hx7GaVYxBF22aFgj8lyj6\n9TS1GIz9BCu6wWGKIb+9CwVIWn9yJbeoGV1IgjnZ/yWrbumssjpBuYUjBes3\nqx91zQzJN4FWbe2Ek5rHXOVwqHWR8L0uLaDBcoCFXppyVbuIFwS9Wep0TCZB\nq/oA2gbCcvBdMWTRzeDDCoVBi6eJTiUhEoy3kM5m4Rc8v3Fufr7WWW5T2fY1\n6cPPSXOrdvvVOjJUE61I4vJ+Kqx95Q7aVNii4MX2VEetJe04FWz9BptA2M8q\nS+djiU42VVzZWlaqq36FRifZmpEDpXsdKGqIM26By3samvOb8LEKgBJ594VG\naHNRh3he/FQrum+j2Bw1DgVugDyXqzmXAT/SVnLjUyl4Jf38ZclVcQ6atNRB\ndxmO\r\n=4a03\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCiJHcYfylBYXrqiX8ODDhf/sGm1K+/1F2jkZmEH1PAAAIgK5xpXNfTTqUYWKJnNTqNEwpn9tOy1J28jOGWuia0jik="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_0.1.6_1529121006669_0.6919953723840351"},"_hasShrinkwrap":false},"0.1.7":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"0.1.7","description":"spider build with puppeteer","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.cn.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer"],"license":"MIT","dependencies":{"express":"^4.16.3","later":"^1.2.0","nedb":"^1.8.0","puppeteer":"^1.2.0","request":"^2.85.0","socket.io":"^2.1.1","typescript":"^2.7.2"},"devDependencies":{"@types/express":"^4.11.1","@types/jquery":"^3.3.1","@types/nedb":"^1.8.5","@types/node":"^9.4.7","@types/puppeteer":"^1.2.0","@types/request":"^2.47.0","@types/socket.io":"^1.4.33","markdown-toc":"^1.2.0"},"gitHead":"518380227bbc7877b5d91726ea394e432684d8c0","_id":"ppspider@0.1.7","_npmVersion":"5.6.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-LWv2H+Kcs57ajSsFYVGlOJvQSC8eWb91e44yogpTWlsWwccpJ6McmzbQSnyqGfjR+jW/SEcYFoidXyMEvgfiww==","shasum":"5e0263fde38ca4304ebb31e8cb5dde0e1365e1c6","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-0.1.7.tgz","fileCount":154,"unpackedSize":1700270,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbPv1JCRA9TVsSAnZWagAAlcwP/3qlvhkLMK/EyADzfHVH\n1mSt3joNKyJIqOdFKkernIjqeTemGmIYZn78ywL4rP8kw8ZlPMqQQmQcTtnJ\n3200Cwdd3VPTMNRO3smdTOXluIj3JxRexJLWlXyHEuPKnr71OCPNqgQGvXKg\nujC/lvpd01rxIAOwaOY8Pb5RbqZY4R4rIU0J1S+dsNMWMbuWgC1/Ad+0lG+S\n8jF/LU9vNvdlK4JzLcKNy/M+KEoZdBBKc2cuFmipel0inynlIStnToCc8TE/\nshceZg9Y7lPDXYSZTKERa4SzIfU2niTVDUitM0uftwqmvtrk6hhYlcyU+kjl\nYjLvBWgOokuiNqSODg29EmXd0AjCv7tHgii2F90rzw16sznyJH6PYeDEbyjH\nE+exfQNChSnkEHgcZCWuuvFGYmvbhF6elPQGLdTDlnyIvg+29/gM4A02XQqb\nIs9kwzVBFoYQowi1mc8pi+zn5VCN3/W3q6h377Rryo11K8wb1r64V8LsUPH6\noj4GdKFwjKRG3JYGdTWEzllSeHPZ3vz1UwEA3rPLfOVLJi1GKY/J9jKfciOk\nLO/Q0g6WxXud0RbrAEjBznIiz2VTtg7fQrJWsHXGcPa+tzGp9D9LDoi3kZfO\nCrlYXXjOQ+ykL5otAhXD9S/ap/jNR33/8CqyeX1J+NkEL3faS6MoDhJbgxgF\n6n4N\r\n=U81d\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGSCEYkZQR7WdAyopY5ozOJeZ88U4d6N+9vYzttHrlUlAiAPS8PI0v34nJA2my1oM0sncKy9sIfq821wFVg801nBKA=="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_0.1.7_1530854729419_0.035220475219288616"},"_hasShrinkwrap":false},"0.1.8":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"0.1.8","description":"spider build with puppeteer","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.cn.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer"],"license":"MIT","dependencies":{"express":"^4.16.3","later":"^1.2.0","nedb":"^1.8.0","puppeteer":"^1.2.0","request":"^2.85.0","socket.io":"^2.1.1","typescript":"^2.7.2"},"devDependencies":{"@types/express":"^4.11.1","@types/jquery":"^3.3.1","@types/nedb":"^1.8.5","@types/node":"^9.4.7","@types/puppeteer":"^1.2.0","@types/request":"^2.47.0","@types/socket.io":"^1.4.33","markdown-toc":"^1.2.0"},"gitHead":"62ed29144fbcd582ddad161540645ec5111454b5","_id":"ppspider@0.1.8","_npmVersion":"5.6.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-9AjxUSV2w28/qjL5Mce87QcqA029h+oOKZm8G593udL/jXUrWHvP0aQyeRMGY7d4tcFykVHFuS/USXFM4SdABg==","shasum":"124f1e8bc65736f59a26584beb0ad9bf89960222","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-0.1.8.tgz","fileCount":155,"unpackedSize":1728785,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbS/puCRA9TVsSAnZWagAAgOEP/Rf0dl/2lJKzn+/A3kth\n4s97w4b7dhZFZDZ1IgkoMxnCwovgOJrTfJ/sByQ0ZfajiqO2Kslv40HqCpi1\n383BxuhNb0wWUMag7y5ScnzkLpZx/gOSE3Cw4Rj9/ktxCrHEIq+g8dubyC4w\nbHgTC73yL/HzRZ+RHX+9kZg8vGE5d94o401BjazXFSn+KYXi0XKIhEiw+XHZ\nEpurg9OoPqFidwRLwERf7jJ9PSqG/3p/l3gIdiVLptxHgkof9De/QvWaIHvf\nXAnC07metRBrrza5qlIThfJ8VkvY3ILwXgNP2JB8NbS45FVCTGGW5F8cOCZt\nD3A3ZY65DL3Bnut5QynCaGyGg8n9oUMrKOm8gdabyhvXacHrRr0JlIF73vO0\nDeKitAUveMUeUmS3nfwsV2C0Jz0oe1MYrUsfADcW35DDWCgy8oD6DPHcjS8r\n7+jjSTLI7vXkQCejrhGXaHjpVOlgUGNA9r9z0c5O13SfVVp4uI05rhUbbGy4\nRGUCxg4NFcJQDHTTvSi/sUCvlamiStfbgoKrA4e/iol/1wOoFDa418P7Pu5H\nOqGSCNrbOnALHAQXch+mPIohJy0u3p8I5GjV+oQOHg2tvpKdYmD+zGU8y21Y\nlqeV6udcn3SB71Hs7Ey24DBFLCQKekIeM0lZNOvDp6GsgXvcD2SWbjp0ZHqK\nASzX\r\n=UZXe\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIG1VQfzwojp8OpTaXM2oAyCPgFw6+myCGyw47S4P+IjMAiEA3h35AMOwfwDdqIJppS6SmaE4yUBaFuRjG0xdxO56xGM="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_0.1.8_1531705966772_0.12563251309215584"},"_hasShrinkwrap":false},"0.1.11":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"0.1.11","description":"spider build with puppeteer","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.cn.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer"],"license":"MIT","dependencies":{"express":"^4.16.3","later":"^1.2.0","nedb":"^1.8.0","puppeteer":"^1.2.0","request":"^2.85.0","socket.io":"^2.1.1","typescript":"^2.7.2"},"devDependencies":{"@types/express":"^4.11.1","@types/jquery":"^3.3.1","@types/nedb":"^1.8.5","@types/node":"^9.4.7","@types/puppeteer":"^1.2.0","@types/request":"^2.47.0","@types/socket.io":"^1.4.33","markdown-toc":"^1.2.0"},"gitHead":"d0870592261a4da065986cff697bd87cc303eecc","_id":"ppspider@0.1.11","_npmVersion":"5.6.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-amKg2YGIySqKvFmFij80wxmdMrHVShEu2BohsbA4uXnM6vC+GtAH5JEC+Gs3Cth9ILM+s2WbuL872r9UxnUvMA==","shasum":"93deb12749ae7579e8a30c5c1196b33779317891","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-0.1.11.tgz","fileCount":155,"unpackedSize":1734055,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbUGj+CRA9TVsSAnZWagAA0rgP/RQyF+l0/eXcmvKgKk48\nIJN5uDNH8tVHXF2ToS/hkwSTmtm3UpfawwkMRkCOoSTVeC84I4d6f8h7KrhA\nZVImQ6liW1wKQ0Yx3gTxHlAwv8HeFd6YOfh+V+Hv42tRx/0jopM+jag0i/W0\nRkcqIaaMPoTd6vMLZn/fgkxoBrLR9G90rwL73TlPUCMfFMv58KJ0zK0UuB6u\nu/G/ZHV5CRYyAMnJ9G2d1sihmrg0HCwW4q3IK9ix+Pdv+ssEy9uylIdtaHMo\nolx5gOaoIwBrhmq9zFu89+ObGBDCpyJkG3U+2CwdogOnaJVn1EqqAJw0yh1S\n8N2fwKm+Hzxb/FHL+tOb0We6+Xfbzh4kDxw5lINzO0091dKOSCch9Sc7EFev\nS40AypLvbgppYiNDA80wmIQYLWetLUnDU4cZivCUy7JfXBKfbwwqwaG44sVc\nOFHeQ7En6xF3tKnWthVIc6QN5bRX0rsTXjtKy9VEFn9Uj4ZDbmpIaBec3DdI\n0NuPFoYqVQw9M0ebv6PpW/kUF0LwH94gRdDjKW7Kd7r9fXXg3Hq+RgJyFb52\n6YvJ0bIa1PEkf08do7S4zYsk1u48L67fMrF+t1hfM5g2aXz3qHohQ1zXOud2\naw+1y6UcN9jnP+ULHzdMJjPyFsrbndVJ8dmoGFPxtpJ0PQSZ6CwzZTv1oLfd\nEfa/\r\n=DWPd\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDYdcihb/u57bSJz0OmTCBJj4jIVwfxcdXRJmDzaP1dCAIgPmE1DRdc3YfHs7pOF2OxXkhmBlxN+BOr8Zzd6fil/zs="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_0.1.11_1531996414617_0.45329403499487486"},"_hasShrinkwrap":false},"0.1.12":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"0.1.12","description":"spider build with puppeteer","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.cn.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer"],"license":"MIT","dependencies":{"express":"^4.16.3","later":"^1.2.0","nedb":"^1.8.0","puppeteer":"^1.6.0","request":"^2.87.0","socket.io":"^2.1.1","typescript":"^2.9.2"},"devDependencies":{"@types/express":"^4.11.1","@types/jquery":"^3.3.1","@types/nedb":"^1.8.5","@types/node":"^9.4.7","@types/puppeteer":"^1.2.0","@types/request":"^2.47.0","@types/socket.io":"^1.4.33","markdown-toc":"^1.2.0"},"gitHead":"5ddd8cbcdc4997d30b70ebb774674a019f40948f","_id":"ppspider@0.1.12","_npmVersion":"5.6.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-+0E7pzLXC1tSZB2Q2IkIfwRs5iuovVGR2CRAmuyvG25+oadfOF6We4uqsLImwDUq1U6ZFZsIqlYVcGeSoJr5DA==","shasum":"d4758c81faf86e24f5cbeec9bb13e3fa66d9d11f","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-0.1.12.tgz","fileCount":155,"unpackedSize":1741607,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbVUcCCRA9TVsSAnZWagAAVi0P/3Lr9W/3ioX0lQGUjub6\nD4KsBoMUK659hBmPyk0OnqURHQysK/rbGJ4QUiJzlTidMLp9cIDrkn6aaMUy\nbHHfd1rJ8AcC/IRiLAhXK71LbHlKp5zoHZ5wtQaQD9RezkRnxN1NzInPljqi\nx8D3I3pAQ+M6eDwl2Dvf33P2s6hsTXNdjnA7Tmdkdm9Nhr8NLbTec2u7k2CB\ntha6R8hFhsPJp2yn9hJHAJeRUhNZUpxZmupeTY3cYER8lWzAQQ9+hUc44uBo\nsBxuM14pueWH0BajFrBAPSRMSNPwOrk3bBegVGyiukwyZmd4ZcjFn91K3RGG\nFVGCZ4Mhwis6cWO8h7m8YhsMUdEnjHfLQzc6Za90Xvw0caS7v4lWbNr3M6EO\nU+F9vO6OcICpED4GGOKuTF2tqrn56GaFrGhhDa9MjidNcIf2B6dw0TW5y3Oz\n0o+WdfSmEqgv78RZtd7wU2VYwIwWVkPWak1P2oYSZUM7Bz2u4gFTsekIq2E5\npJGCBmZERBFTu/zfLM+1XfODJhp3U2A5Q0M/1t7pYJYoFxxddeG7o//N7zHn\n7pzWYdtPHZlJ14H2pWVOWF5/73jpigFxSiBDLVsNTeCJ1ZcIulaS3PyDRQfy\nVWom8KGcAI/OgfJLdfCER2mEfCL7UVYmOuXFXYv9pil0X+zrrCINQoTqR2Zx\nXWzs\r\n=Oa6r\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFH0CEvcEoJ3S3NLrDr/TFFbJU0/9qGSpgF0JflUUuPiAiEAwu+gisykDMQ8A1j0nBz75p2oNh0DiLaqoRzosTxAnEo="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_0.1.12_1532315394618_0.21039238909599978"},"_hasShrinkwrap":false},"0.1.13":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"0.1.13","description":"spider build with puppeteer","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.cn.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer"],"license":"MIT","dependencies":{"express":"^4.16.3","later":"^1.2.0","nedb":"^1.8.0","puppeteer":"^1.6.0","request":"^2.87.0","socket.io":"^2.1.1","source-map-support":"^0.5.6","typescript":"^2.9.2"},"devDependencies":{"@types/express":"^4.11.1","@types/jquery":"^3.3.1","@types/nedb":"^1.8.5","@types/node":"^9.4.7","@types/puppeteer":"^1.2.0","@types/request":"^2.47.0","@types/socket.io":"^1.4.33","markdown-toc":"^1.2.0"},"gitHead":"b8aa0b640759621733d80be3c445a56c86237f6b","_id":"ppspider@0.1.13","_npmVersion":"5.6.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-QZsUb6aT0TF6Nk7T7xdKFzkybgv7a/saRT6AOAwhh1lFcJ0PWiVZfMMmrPwxFr7lis6UNPGI1/lHzD2gTY0eog==","shasum":"3b6e1e3f535901882f131e0bd2058bb28657fe71","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-0.1.13.tgz","fileCount":159,"unpackedSize":1752455,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbVr+rCRA9TVsSAnZWagAA33gQAIWdQdOO1usFLtjMZtSQ\nDP6JWg43RY9U8I5elOS9AtAtPGI3KR19hVB0zjWXrrjMyPrqgw/tvrEli97w\nAfPzTo1CyVjV1MNAlF1F6tud2JW+k9e0mSqse6N2Ws6rAsNq89spNrEBdxwj\nqLyl+4lTin5CTWJAC8RTeK2IHRSHpc61NdF5pWgxZIPDzDp3fUmlY2ecmSu5\n1kykStMa1jIxujX80XrY9wndhnDg5eoj3l1EL/XB0dC5OG9x7cmo1fVYtxGS\nYOFD80nZchXFosBOEgF5kIK31MHwkPiDMRe4XFFuiLwDm0rmyFea3HyNKd2H\nTYLYVSCyPw6pprQHcmpOXfONerH6Hl4k+Ey2fFDSg9nFBnYOQNihlQKL+9JH\nUIVvoPhY28gf4DTOqzkGu1hy6CbQr7lJsXwr3vCgRCzMvsWW/DstQ1GqFIUN\nZXHs7LbA5NSFQuBPknvUfvN0MdHQETg1HSnxDHFacqcP6QHLsU08Ds6y1oJv\nS+g63v7pHtWCiXznkn9roP+Kcz+zthwBddp+6RXJvT5EhRVpdswcT+BvqsIm\nYDdiLSnx5kNOzZJp9JKQaH9KRy8YViadBkLdw64+Ezpxz96A8ruZdwc8XeZd\nxrCQnUNGkDgAzFOKkY0UwSFF0oqXW4HaG68YSDtM+3hP2HRSWcysqJreVDZh\n7368\r\n=vJwG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD2F5Z6SpMgd2bjLW6efyN9+vrEHDuBYR+cbU4YUbRlWAIhAP5ugxpf1rDm3r2UdJshPpUkEU4iv6vT2nXdbxpkYU0j"}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_0.1.13_1532411819259_0.6520232658699026"},"_hasShrinkwrap":false},"0.1.14":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"0.1.14","description":"spider build with puppeteer","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.cn.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer"],"license":"MIT","dependencies":{"express":"^4.16.3","later":"^1.2.0","nedb":"^1.8.0","puppeteer":"^1.6.1","request":"^2.87.0","socket.io":"^2.1.1","source-map-support":"^0.5.6","typescript":"^2.9.2"},"devDependencies":{"@types/express":"^4.11.1","@types/jquery":"^3.3.1","@types/nedb":"^1.8.5","@types/node":"^9.4.7","@types/puppeteer":"^1.2.0","@types/request":"^2.47.0","@types/socket.io":"^1.4.33","markdown-toc":"^1.2.0"},"gitHead":"c2a7584111203028f10a3e28ae19462743a5147b","_id":"ppspider@0.1.14","_npmVersion":"5.6.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-oLJMFdueF7a1W4l+GSLdjlEXrAF0PGwRyvPUjidaYct03UNwgUDJPsS1764TCr6xVexjUuhbddi6wAV21ZnHSg==","shasum":"1bc6d57eef9dbb8ebf7971e9862847f64fd991a4","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-0.1.14.tgz","fileCount":163,"unpackedSize":1787176,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbWsyiCRA9TVsSAnZWagAA+KEQAInm7tixrxe+xHqdii9U\nRQ8jYPpkXjlOKV1Bn6aBkmwRhqeoVOzy41rJkTTQMv+ifuoLYV2/1ayVcUCL\nn827SaYf53vHfQvJGvvxICIvk0SqmC3IsPG3cOH0637TZlJKxy8YyHxHHTSv\ndqeIH2tcBlh0QpfrMb9D+Av/S+ihizNBTHwXiA8PIpV5gC1Hhj5Ujd6RIi6j\ncfjZgcpAugtk+5ftlou8ChIMDo7gHD1fy5d8rzQDmmTjFYTq/NyDnAagy6Vx\nRAtRIMWphaY62pnrWTVPH/NgiCAG0tXxAQurkZuLYw8Sod2cJS/HZWpxj3X2\n4RIpNyQG08w+KyqND61NlqODXbZj5w0D+6ifqPzThZ9GaO+yBB18LJl9aFxz\nJL3llos1sxp7sTCuvdB/zs3cP8Ppku8wRXTepaLp3+E+WHjAYRY1S3cedzQZ\nJXOATry8bHn8mgHhenu5hMkN2D4UN+u2wXQ3ry1T0G/NFqDj8dtbbldULqll\nKMVI1o1xWTTiPU0jtQbOpY6j4hrnTb0L+qX7e9IJmCHTuBxAup2+/U7xgtWa\nyBF1zDxwPkOQTqCzjwpha8P19IUBNzPM60YK2fvwkrvQKegITxdnMluMfOOM\ngZo//zR6RCys7dTUG0yfa2WpapOslzZKSBRZ/i6sYnUyJZU2HJPs/7W1jE5X\nJRhC\r\n=9jv2\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCGuRz+lhq0GibpMiEu2pSMgLSh9/FpswHjfq5Zz3VJsQIhALjMDsEtunuuS7TNvrncaUptRC6c6/YLxZrRZvHTjCE1"}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_0.1.14_1532677282135_0.9193533941635335"},"_hasShrinkwrap":false},"0.1.15":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"0.1.15","description":"spider build with puppeteer","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.cn.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer"],"license":"MIT","dependencies":{"express":"^4.16.3","later":"^1.2.0","nedb":"^1.8.0","puppeteer":"^1.6.1","request":"^2.87.0","socket.io":"^2.1.1","source-map-support":"^0.5.6","typescript":"^2.9.2"},"devDependencies":{"@types/express":"^4.11.1","@types/jquery":"^3.3.1","@types/nedb":"^1.8.5","@types/node":"^9.4.7","@types/puppeteer":"^1.2.0","@types/request":"^2.47.0","@types/socket.io":"^1.4.33","markdown-toc":"^1.2.0"},"gitHead":"defc7235036b4121fd1aa7e78115bff44d2bd3ea","_id":"ppspider@0.1.15","_npmVersion":"5.6.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-bnG/39NVWozrImV0sECgIroEN3s7mXquTbep24Dav6fpZcRUa5MtJaxKumsCl4KPKXoktazOIl3v2xocAML42Q==","shasum":"1e8657f862ebc3a346173a8a2e1b8eafb5faf992","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-0.1.15.tgz","fileCount":163,"unpackedSize":1788654,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbXm3JCRA9TVsSAnZWagAA6q0QAI4gwg1pAIVV1kl13xSf\ngkhccML2ceCKtNlYWGHzFTAccI+TOEw7ojnT601cSE/2aGcQ3lgPFU5I7x6e\nD35h6zKoZWCY5IsfpggfiVyZcRs+XO67wBr1ucBd6TEMgPa6hQzNNbPOuYEU\nPrQDTN6SSXnkLawLEAXZy9wUPN2Y/6NdZzspNBzoR4eucZqgnqWzc85ARXg7\nv/gH2vPLy9Q3OqWlFYYuneCh8M3462bN0WkaOx6t5Pnu7xvjDS3N/HC7GyUx\niHlFi2VEvScQV+UZDMxex0VITPboCKAR4BHBlDAB+yrj3S/eeep0VNYrLWfr\n1Ud5MP0Kr5+XJrB+ZhZ3ZlQ5bbm8EFx0/vAiQn5jPNipGhGn6eYzm9Xevls5\nvGEBdPmpp6bCj7liuhzsWFJtndzVw1RrC+U2qxpJQdGXK6dcOd54GMfRH5V6\nhimS4vKX19073raL9Os5zvmnvEQ/9BXp7n8Ylj0Q1eUkgUh328a5NGIv/Voe\nPyukJ7Hvh/+j0j0hClpzsTWRAjkum8EEhYxfrbV41mnLBSF2+13hG1YXphKm\nD7NOv3wDcjnsZBSSrz3h79ZXTpiV3H/p7WVR/foD9ZY7/ztvnKWQnyZfyOMh\nz2XKzwS6Dn29jFoItrQ4RzsS6bgr1gmJejGm4xZmh1MUwGLvQBrApyWIG9T5\nSIha\r\n=Duqq\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDTVBgL03cTkC6SI7wF/EdFrmQEp1R9Rp1yOIG8hpTlGAIhAOBnEknRxcr8n80Pr4yMbvk1g/OM3glqugvavqikFvap"}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_0.1.15_1532915145147_0.09978384133515616"},"_hasShrinkwrap":false},"0.1.16":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"0.1.16","description":"spider build with puppeteer","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.cn.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","headless","chromium"],"license":"MIT","dependencies":{"express":"^4.16.3","later":"^1.2.0","nedb":"^1.8.0","puppeteer":"1.6.1-next.1533003082302","request":"^2.87.0","socket.io":"^2.1.1","source-map-support":"^0.5.6","typescript":"^2.9.2"},"devDependencies":{"@types/express":"^4.11.1","@types/jquery":"^3.3.1","@types/nedb":"^1.8.5","@types/node":"^9.4.7","@types/puppeteer":"^1.2.0","@types/request":"^2.47.0","@types/socket.io":"^1.4.33","markdown-toc":"^1.2.0"},"gitHead":"89c21800d5512931798d0458d17a58b0c52d916e","_id":"ppspider@0.1.16","_npmVersion":"5.6.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-n2H0qoH7p9GRBhsi1I/YVbtPodAzj7C/HYLKJK4WA/QtDRtaNxiW7i2eBzsllUzHbF2/DYjhQWPE9y/OWWibLA==","shasum":"d3374dbd649bb5cb41bb3806c66b86a42f57c7a9","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-0.1.16.tgz","fileCount":163,"unpackedSize":1789274,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbX9b1CRA9TVsSAnZWagAAzjwP/0CbxjVY7trX/VPLtiIG\nFfl17fQDTySpMfx459vhtecwVS6UkQYJEhU0Zg/aZwx0Zedec05QqXYhJ6NW\nGX9awIeGgOCT+e/iRlMXZCC8mypp3YavyQ+JrKc8Btxo4oUzfDHA/JYzZXGV\nmRUYsG8wwufbrqmKtyQ1t11jSpx+YO8O9xBrAG9GyIjjp4Ff0PYEbCIp4fIb\nAnwSEI6pB/+ZQq4+t5PsjfmSzSI9aai1HBX8znZ3oVVDoNKClkju7xXFPKTp\n5DKH3TKgxrF1Zw6WPXQrHq6Cg+s3LpQUbnP0HdsC3povRTFePAE+AYZN+Xe1\nmu0gR4/rdfXXvYSBmKBpswjnSGZ2kmv64kHqr2OiAZVWY0H3fT97OiSWwZIl\nRKazTMNhRokGyobKWOyaCdN2dDGFJ2f1xFpolvcbKRLvjrT5NvAgP8yYpI2W\n++mjt+Hl4Ko7GDp1gjW5g9CYdzD9pLCa3q1T5s6lEEVRhbvKOWcvTkdWm0Hx\nR7Vk2rAffiBQaX1jAoTS/cIt6ED4JAwI7yZLwVS5MSu4xEHhyqsGUgikrC1r\nhrD3tZCFgaDsNICFAqLSPTzP4SEXxel+cKXU3w7TspqfbD3Uf7jPJucFNazf\nvviy2FFF5RGfy6q4tq4oven71G/qmZ4QtwiH57gRKbrNGUtWiUxxEA4ijki7\nmm4t\r\n=Hqh4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD8kMLRRsSLHvEsvZNmg2i/Pl/EVH4OzxA8zp5T4RiGKwIgX8G/LBJUQYzrn3vshGZnnQFZvVVBI6BY21b268RAPys="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_0.1.16_1533007605561_0.8205357280539065"},"_hasShrinkwrap":false},"0.1.16-next.1535019295477":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"0.1.16-next.1535019295477","description":"spider build with puppeteer","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.cn.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","headless","chromium"],"license":"MIT","dependencies":{"express":"^4.16.3","later":"^1.2.0","nedb":"^1.8.0","puppeteer":"1.7.0","request":"^2.87.0","socket.io":"^2.1.1","source-map-support":"^0.5.6","typescript":"^2.9.2"},"devDependencies":{"@types/express":"^4.11.1","@types/jquery":"^3.3.1","@types/nedb":"^1.8.5","@types/node":"^9.4.7","@types/puppeteer":"^1.2.0","@types/request":"^2.47.0","@types/socket.io":"^1.4.33","markdown-toc":"^1.2.0"},"gitHead":"c116aaa73f267412b1f7e632253c6b098e2e2792","_id":"ppspider@0.1.16-next.1535019295477","_npmVersion":"5.6.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-PVGgLyo2ApO/Oe+UWCR086cR1k+N8ejRg5YyWRRKoydWoYETsAUwJ28AukUPovk0HzcnUymsU95f+b/2KqtbHg==","shasum":"b3ce5b76078098cbe32571c152accfffcbedfe01","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-0.1.16-next.1535019295477.tgz","fileCount":167,"unpackedSize":1793761,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbfokqCRA9TVsSAnZWagAAouQP/jn3fSiRg0oPSGgRgJNl\naktJVztWuUZfdeMQ7WWDZOS8jg3+xqJJu5EgFHE89q8Lo4lp3ApJMUPRF/La\n9oXbVedctzIZ2iD4HopGkmFjfHPw9uVAPANox58oyHt35lHn34BXhFwErsXH\nZu+q53h6AQtrwDgDayUizePh2m3TTu1oHioAnXVNW0JMvICcYerk3kQXDiSE\nicz/7JrsASsRUYOKRacxTqThJWBChIaxcLFAXk8iKn2ODPhDhgZaj/8Q6e1V\n+z4r4kS1MlUJwaXzUWgIhaxD2La7fhHw/MIP+CCH50zTBzllzkvjcbkveFFY\n7vM9ni1FsDH+Icv+IA632W41orhCPcWaAyEaxrRGyEKheqDlVPWK8+n4C3Rw\n7iUzNJ8sfa6YrODk1TzVK23lNW+sm0AhOpiz4nF32bkOAC35++Lze2g7GIio\nHXz1h2q9GqxOzkvR3gMlDKeVIE6sRb01H/SuhemYJu16K1LvGDr9D9uOoWXZ\nqpZu2jj1jBeeb+WQ9kjqPgGivikwjIWNhKA2gaxLQzwhSc3sVbiFaCZnXaQP\n4M15/rYLWrTSwpw8Kalk8mBa8qNXjdf0RW6gJJZH0KWkAfNL8f1mNvmPJwpf\n+ZXkeLA2Kc/onD1Tu6mhjrulUJipo4yS0+/CsLeYVKLOoEzkLFQbBHnZhQ3n\nbD2+\r\n=bDXt\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCrF26RtGTvY1nQO0pZR12p0YRkpMmFQqZWISzB/LciygIhAIP7UKAUpzezSLGPTYwvEbu/pUwKFzhThiAFCnlwRBGQ"}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_0.1.16-next.1535019295477_1535019305521_0.15277366832484707"},"_hasShrinkwrap":false},"0.1.16-next.1535097570810":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"0.1.16-next.1535097570810","description":"spider build with puppeteer","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.cn.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","headless","chromium"],"license":"MIT","dependencies":{"express":"^4.16.3","later":"^1.2.0","nedb":"^1.8.0","puppeteer":"1.7.0","request":"^2.87.0","socket.io":"^2.1.1","source-map-support":"^0.5.6","typescript":"^2.9.2"},"devDependencies":{"@types/express":"^4.11.1","@types/jquery":"^3.3.1","@types/nedb":"^1.8.5","@types/node":"^9.4.7","@types/puppeteer":"^1.2.0","@types/request":"^2.47.0","@types/socket.io":"^1.4.33","markdown-toc":"^1.2.0"},"gitHead":"c116aaa73f267412b1f7e632253c6b098e2e2792","_id":"ppspider@0.1.16-next.1535097570810","_npmVersion":"5.6.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-VnYsMuS3KHoPqwQTO786na937keTt2IIq0FE+W4zc26pwrxtrG4zWZFXVTSEmClGg6qftPlE3J2lU27NfhJ6qA==","shasum":"2706f79730270a4d868e322d1311661d55eb62f0","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-0.1.16-next.1535097570810.tgz","fileCount":167,"unpackedSize":1797547,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbf7rqCRA9TVsSAnZWagAA/HQP/jjo5y5v4/c/vXTKsjAG\np02I2gBGz5MB4R0fCK/3zunDwFqDRoIKklVe85j7yCy6+zIWQG3ongDe2Y+Z\nfl2V2kWuNTuP+ZxMP6jO8yim1J+vN1/iaJXaXdiC1flY3nkDcxtXPLP78olN\niMWceGrDIhwJqMkZcCSuAJdi/tafzz0cfMirbt4sNf4fPppghO+CBhyNBfkc\nQTayPPZngIsR8czZ+/rC7+Oa6c0WNq4aREf6SPz2/XdZLbPKFme1LUMOIBiu\neMc4boR34x5KUspvOxsIPgP9NK4Mt5+TvTQRLyWxCiY+6t4KZ0sY80ksXMzQ\nAqLlI2QJxsz7bcu6Jh58mluTt9yZjq1dkIbZ0xSj13D0I/vzQMl97UyA9I6U\nshP3ZwhUz70NgtPinXd+3s3tICRpRVMlFybIKWmnOUEUTF1JSG8u2bgOh1xd\nME5Us9eAZ3IUCqxyOzVWwtBHbrdy6LeyDVYmT6pTvEG4rIHYZyNrG1aVZ1AK\neXL0BKL0hvhJZyV0HDHetlZhFBw0FKFiatDrKmYLbFPLtED02Z86yIMYlGxx\nFngGPck92Nz7Jc3evnzlsmGA0dqB8otIUSdgzrIA51UHpk4S3kU8jUTEvsij\n5GTlCOVQ7W1yxHNvH3enaifEm+PBmEbi9qBTftTMPmUkua2dmEN1z5Ac585T\n77c6\r\n=E3oY\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDGsbj+bFXhOilaClpq1SHQOTLDi+fEsHfqdT+thVYQZgIgcConCkItnmvoumimImBHwNA+cslwDIa2Uq5P5uaVcJo="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_0.1.16-next.1535097570810_1535097577688_0.13617499227984187"},"_hasShrinkwrap":false},"0.1.17":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"0.1.17","description":"spider build with puppeteer","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.cn.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","headless","chromium"],"license":"MIT","dependencies":{"express":"^4.16.3","later":"^1.2.0","nedb":"^1.8.0","puppeteer":"1.7.0","request":"^2.87.0","socket.io":"^2.1.1","source-map-support":"^0.5.6","typescript":"^2.9.2"},"devDependencies":{"@types/express":"^4.11.1","@types/jquery":"^3.3.1","@types/nedb":"^1.8.5","@types/node":"^9.4.7","@types/puppeteer":"^1.2.0","@types/request":"^2.47.0","@types/socket.io":"^1.4.33","markdown-toc":"^1.2.0"},"gitHead":"9179853f0f1c9d4b1677d4d4c720dc84eb853521","_id":"ppspider@0.1.17","_npmVersion":"5.6.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-1ju1WPwXxWuaCRqlD8SFAP6qflBzPtWeo64fyeteheHsMu9TEV8vMGDcTY25w2VWotPI04lBKCxcb9xtH8dH6g==","shasum":"05d387596a15d6ca2ba3f9cebcf375742fb606e1","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-0.1.17.tgz","fileCount":167,"unpackedSize":1797528,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbf9tcCRA9TVsSAnZWagAAGIQQAI5f2CT8rm0FEEWdhMyD\nIWEq6kZjj5KTp12m7FCkfqcTF/ATGjtBX2OFAckz0mj6XDaSdfFr4Td3HJze\nIU9rLI6Toh0NwUSFInva5hlWCtWPBQX5fkz9LRYD+AExq3uRM5rza/zGLIBD\nEcDhisWFqrpv39ILC1+OdYfH1YGnX6uF0IMBtFMFIMEakm0pjsEi2XQ3osFv\nk1fjIyMcEln4i9xKm2rlWeAfFQiHBauIKcl6KtkSpM2F+cx0EiNMosXaftZt\nhdHb/lYnafQNWFX7OX+w0ibJOCN367FRhpG9dYaa88GybXDpiqPjKGFNrgbK\nrjgMkvEBl2eonEbhUIxjYIjoGMv7JKn4taX9preZke9yqt+KdyevBD+ghmBR\nYnqgbcOZDYR6Fs4tUuzZgWBKesTahjuBhq0eacKOSW3MqwFgyHaDDfVHC5Aw\nFOO3GmV1a/6+IcIV5vc8ZmTi4Uahui8YUzGGm+CucmC8HI3XrFgqVNG8Sv2h\nXoLla3rw0pdId1ov+PylHW9a+I9Nkbztyf39p56iO0pWhQaSlhmDKcN+FAmO\nOUrRGyKeHzA6VNVoxRyQeA/C1a7DEPLcYjud4/HTtBTrwpTyjqovbANX//0U\nrWzv33V6P+2pedtLL9qm2kblDl7Xy/LH6OorxLqn3DD2SFORSxcmqj1LyEsg\nQaY3\r\n=xw9v\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG8sFUgpZC6OW340os2aqU2s0ivCiCCFGul/8yorlKSGAiA592iBk7gsbAqatYfaYhKA1d6IwPsjjkdecGUGN4Mxrg=="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_0.1.17_1535105883921_0.13511125285384673"},"_hasShrinkwrap":false},"0.1.17-next.1535527033931":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"0.1.17-next.1535527033931","description":"spider build with puppeteer","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.cn.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","headless","chromium"],"license":"MIT","dependencies":{"express":"^4.16.3","later":"^1.2.0","nedb":"^1.8.0","puppeteer":"1.7.0","request":"^2.87.0","socket.io":"^2.1.1","source-map-support":"^0.5.6","typescript":"^2.9.2"},"devDependencies":{"@types/express":"^4.11.1","@types/jquery":"^3.3.1","@types/nedb":"^1.8.5","@types/node":"^9.4.7","@types/puppeteer":"^1.2.0","@types/request":"^2.47.0","@types/socket.io":"^1.4.33","markdown-toc":"^1.2.0"},"gitHead":"62ee91ea47ec8209e0c1c675833de0ee8add665d","_id":"ppspider@0.1.17-next.1535527033931","_npmVersion":"5.6.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-c6axjRA7+J8H+Ovq29Pcw3oHgxQvYAJ5cfWIpJ//n1jrAqtKg7Yewu6MMjaCcflsenYH6PLHad3sUGFGbeKK6w==","shasum":"30b02905ed65aa8646499fca4c7bbe752741da27","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-0.1.17-next.1535527033931.tgz","fileCount":166,"unpackedSize":1800161,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbhkiMCRA9TVsSAnZWagAAtgMQAKEy4NbFD7IA+ew3p/EE\nZjkOr0H+UNHGqigaLuUWmD2zJitQ2O0JYDPE43IpHVdzHjm3R6ZiE1GaSNiO\nY1OCG0GWRtgoShES6bGRxOQEdVeYbephTlw4g5B9AW4UZpKY0RX+uA3mhA6h\nIMmtj4D0hvVJb6mk0r4E0Ow0GPJ6WaXWYEPo5FTL72/p+4Wu00NvqvUWcvct\nax76k2648IJY5P8YB5ZsNCeXPujtWwiQR7OqstL1EpyVWKeIPrLI6Wc1FrLm\nrC85BFLffNhC+kxk9Q0fuWhoTyhUEoiHRo6X6Smn+fXB1iJ769VyYsbKOlpg\nLL/Lt0ejBpS+okk2YYm8AGDYidIQtu13OEDi+/DeZKYrlShuDI3Qc0Y+7h5U\nyRe/yuxy97z6dOZN+NJmQ98tu9+SAt1XBQvnvsEGtx+F6hKr4JI3FtQncfKa\nDXGscBLV3axUNKuxdgcoDfNSxdlkV9gsrGDQ9ZwTa4yVXnJt8VsApFlClPj/\nlj0ftO+ofg7ftlJh9089KUeMWW8vFoSeCnFOCBsu87VtPZHkT0/3avZ/+6WU\n+DQ8qpRmmotRim922TWgOAoLdHWhiz/dYotcBhLSkZG+9L2kHCaYmSkNvacr\n471flcHiyKN52+vDnHTH7c9IJBhMQpxNyTI+CYHVVkPKxIs1pUqVvjSDXKKn\nX7xl\r\n=q3gu\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAHgn3lj/XNpjUTKExt0b8yfABbI3Ud4gQADnKYuebadAiAReDm0qf8s7GVHdq9mLCmSaN9ZB9eR30eQetwvRyyvlw=="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_0.1.17-next.1535527033931_1535527051870_0.5033567818655851"},"_hasShrinkwrap":false},"0.1.17-next.1536904095120":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"0.1.17-next.1536904095120","description":"spider build with puppeteer","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.cn.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","headless","chromium"],"license":"MIT","dependencies":{"express":"^4.16.3","later":"^1.2.0","nedb":"^1.8.0","puppeteer":"1.7.0","request":"^2.87.0","socket.io":"^2.1.1","source-map-support":"^0.5.6","typescript":"^2.9.2"},"devDependencies":{"@types/express":"^4.11.1","@types/jquery":"^3.3.1","@types/nedb":"^1.8.5","@types/node":"^9.4.7","@types/puppeteer":"^1.2.0","@types/request":"^2.47.0","@types/socket.io":"^1.4.33","markdown-toc":"^1.2.0"},"gitHead":"9d2b34311f8bb525a446a1aa799fab7cf33af38b","_id":"ppspider@0.1.17-next.1536904095120","_npmVersion":"5.6.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-HGwhGnoD6PsaKOC1CNT/piW+MtEoHxuFxz5HllBPl8d0fqXZCHoqOhEZSJusocKcKbbCi9TAC4Gfs3+Hh1tTPQ==","shasum":"6395be8e795b04fa57fa6ac14d77b05dc36aded1","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-0.1.17-next.1536904095120.tgz","fileCount":163,"unpackedSize":1807702,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbm00cCRA9TVsSAnZWagAAy9oP/3oRube0iegQbZ89urfT\nqUcPbzmEzKfImrqmXHCEqZbif+Jo0Md9M/GWHUKPwPr6emd/6s4JF5iAIuJB\nxLA6a2gtccwzT0oFPzuHoGmdlu1x4pvHXIXCKrowBo5RGYgfh29G3Ewr052/\noOl80UzZ5Xe3L3mmwOOkQAqTJX4VahsBgGCbNV7et6aV3SuvRDP8lvPA17+n\nabVSEQuNEKg0w4PfPxBOVcV9YKrhJi6HHtFo6sM+N74le3QGxrbmqfsAnlFR\nhIKA4VWzW8uTjAGj8lkqIamvdfiq5VeXcFzyAK6anPKPygqQW1v81JNHH325\nUZViYaYYjF0qMtawvXv5DW7gWUdZT+FrkdEKKs5VNfx0CqPmN30VZKD4abZD\nSFJCFcCuUgZwcu3oNu51T0E8sZw5o8DOi+sb7S2q425ZdnQqo8YfRTUgAgVh\ng7XxJ7p5St4g6t9QbL9WxqKS4IVTKoW0Sfy3Cx4LG3emK8gpD6Dl/Y/T4EnW\nnAk2dzHXVWbEFte0h4suCO1QOa4n1VaoOc1zY1QKGrt35K1dgG3olRE8QhmP\nZqtet5E+OeidpOpFy0a/HoDKNQMg6MzAHZSxyxuy4xyK7SnASMQSgkCyRgC9\nuXfIuH/qqXu3CcVHsJ+GHPg1mFpTKYwarXT0OvRSFYe5oj8Nh9lSxy88dq3J\n+k50\r\n=yh+4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA6VwRYm3tA4PUfa8mF01SR0/O+fMpLxsHzf8GkGY9zgAiBgpr32FgTIaV2yQBdwIrntoiLeyZUcgCtbvL6z/cz+qA=="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_0.1.17-next.1536904095120_1536904474864_0.32920054418317135"},"_hasShrinkwrap":false},"0.1.18":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"0.1.18","description":"spider build with puppeteer","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.cn.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","headless","chromium"],"license":"MIT","dependencies":{"express":"^4.16.3","later":"^1.2.0","nedb":"^1.8.0","puppeteer":"1.7.0","request":"^2.87.0","socket.io":"^2.1.1","source-map-support":"^0.5.6","typescript":"^2.9.2"},"devDependencies":{"@types/express":"^4.11.1","@types/jquery":"^3.3.1","@types/nedb":"^1.8.5","@types/node":"^9.4.7","@types/puppeteer":"^1.2.0","@types/request":"^2.47.0","@types/socket.io":"^1.4.33","markdown-toc":"^1.2.0"},"gitHead":"2a6c4270771041253c175470c95683c43477126b","_id":"ppspider@0.1.18","_npmVersion":"5.6.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-crQzDP1HkvepIdBwGT9XFRQ9fKV4VFbNjCqsQr1uUrACilkXcnx3L1A43V/H+Fe0efHYeoN8EshZ+qLqpVPZuQ==","shasum":"8be9792042365984becc437197a09b389cc04fe6","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-0.1.18.tgz","fileCount":177,"unpackedSize":1844593,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJboiIECRA9TVsSAnZWagAAdncP/j/cbdmnSLEunX76xovB\njpqWT2pnqbJLfKlmzVw9dCCgQ2wk4d3Lx+oxjBDqgdyIuCE7azrHDDiY2fp4\nxSnOcGxMIMPJpuUfniRjujCKsJEav8XqjJ8JMEZnJWoT/AE0phhOIur0UFYm\nYwGmeTNSO0LB+G2tiBXd3ndpMJezZs8On3iqs7X9jTvt1JEqIiITKfM+2/T4\nbRPcRj958WDNgv8Oq9YGXtHWts+cPXVepzVkkwYNxUgR6AhkfFWsRymZ8UkF\nOYnkIDZOm3y/W8t6RKQkt/uXxYJmex3HFRiy1Uk/pPqfUQ/Yn9i8ne7IuwI5\nwy5CUiAMF0Im4SopjUHodSMzq7T4Beb+k8lEsYnBYnj64RlLLOTZBWSTL1OJ\nK8fXqymJINg/zQsNJ3HwIihxe60/KUHhdyBcPmwpy+I9kV0mG/gbqZzFCSTG\n6WiAbRfpRCCK/LdL+5vUfYlL5wHqJpF0KPlEAJCACjaboPAa1oLG08TqT5Ln\nKcH5VgcHDBkcI10I87jQXCdl03e3QqNX1aWs8Ul44lgpQLe1Yn0WML8ROSz+\nHMxH12vM+Y6sOV8Q54cBtmXvq/K39Fd3Sk+aR+x23R0x0QeTkVK3uM8mKP6p\nmyA9gNGG1SrKtDDRCKExZG7OjRyExRcWGNyfFkosS08WZ50qO1+bY+OyEtRf\n/Sse\r\n=lL9w\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDFCHXAnwF464BVDJmtP4XMiLpZTZ9qWekONgdVJkV72wIgBY2OWW7KOCZr5hPFPqD0aBTLc2yEHpe0NXYpQ0RHpi0="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_0.1.18_1537352195382_0.48428987604812157"},"_hasShrinkwrap":false},"0.1.19":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"0.1.19","description":"spider build with puppeteer","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.cn.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","headless","chromium"],"license":"MIT","dependencies":{"express":"^4.16.3","later":"^1.2.0","nedb":"^1.8.0","puppeteer":"1.10.0","request":"^2.87.0","socket.io":"^2.1.1","source-map-support":"^0.5.6","typescript":"^2.9.2"},"devDependencies":{"@types/express":"^4.11.1","@types/jquery":"^3.3.1","@types/nedb":"^1.8.5","@types/node":"^9.4.7","@types/puppeteer":"^1.10.0","@types/request":"^2.47.0","@types/socket.io":"^1.4.33","markdown-toc":"^1.2.0"},"gitHead":"7e2d0d5453358c7f8e6f860bde537114ecfa5fa1","_id":"ppspider@0.1.19","_npmVersion":"5.6.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-yd1tt9T+7WnDvT0/zE7P0K6ehpQm6jy7zrXBaq9xsbiTIZGKv4lBMdRJdoPVghFIdmp8yAwRnbcVYJmwtZJaew==","shasum":"ccd8ffd4dc990fd4499eca1203b0386eea7f40bc","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-0.1.19.tgz","fileCount":177,"unpackedSize":1850433,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb8m8vCRA9TVsSAnZWagAA4DsP/jv7CpIruLrlwhOEn2KQ\neN7L/E/yDU7RHNcFOd8VG/JdHL/UAQd1c6FsFEr+IE4dx17tTYvDdJNO3t9/\n8XeUeOKJQ6yqJ9TLe93PxXyZTkRDrI+3YX1Qc/kf5A8IZy7oVKM1ypAcYAHb\nBeLTUWr2ezwvIFwMLnCCc6A4PgzQlBB91FJOKkmYrdNUiyJdvzql4VN/m6h4\nix3q4o1SAOn4IMx+4W0wvF89vDiKr37ny1gyzcfTx3MNlYfwsAfc2C+sVNo9\nJjFnD5kWprBd+YO7eIZisey2RUOyMC3FEqKJZ9slHk3vsi0ldcSh4oX07hr6\nRaAh/jltOSIeWH9hiyPnb0470Sg9ATi7CP7f2hk0/g/1atYF8ecl4/LwU9E+\niRy7OAts7zGAA+sUtcBgUZAMgQhluNco+L2PMGegJaXpCNbzKuqL3wWZLJRK\n743Hp+deL3YOj4mjbgB3OSVZq+ozDH40usxQDSS2oQcUn2jgRNLO3BP2QxT2\n8SZYHc7LGXK+XJmH1IHDzBhYM3mlFkFwFTboHlO7MBYvPdD/fzmZCgwVpDr6\n1F7s6jf6toWgcDS8fq5l3/YxIzr+oMQYX+vanlFb4V61nWf4Id/4tmsptSRU\nFS7JVUy14nLdl1Ec2oUTxfxnsKV4F9ZxSR9wY3WfBrCdDo9yWS5oecb2lvd6\n2gX7\r\n=o8Kr\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD3G6W85n7QHP4tGJ9jfcL6xqXI0PoMJz7IWyx+bq7PhgIhAJ6a4Aq4fnQxJuPL2/CmaHQFW/iSDA9oy9CMZH0vAUe/"}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_0.1.19_1542614830506_0.6708946945028416"},"_hasShrinkwrap":false},"0.1.20":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"0.1.20","description":"spider build with puppeteer","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.cn.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","headless","chromium"],"license":"MIT","dependencies":{"express":"^4.16.3","later":"^1.2.0","nedb":"^1.8.0","puppeteer":"1.10.0","request":"^2.87.0","socket.io":"^2.1.1","source-map-support":"^0.5.6","typescript":"^2.9.2"},"devDependencies":{"@types/express":"^4.11.1","@types/jquery":"^3.3.1","@types/nedb":"^1.8.5","@types/node":"^9.4.7","@types/puppeteer":"^1.10.0","@types/request":"^2.47.0","@types/socket.io":"^1.4.33","markdown-toc":"^1.2.0"},"gitHead":"792f7c6d107d3ff845ec70bd0eddf78328ce3664","_id":"ppspider@0.1.20","_npmVersion":"5.6.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-N/61l30HpGfUk1QNGORZD6VPZ45WRUy7Oo1GPmE+hg2+28FW+HzL8tvTknpPs9IwMhrqoD7Sw/nHVQELzhOgNw==","shasum":"0c670a2e8ea483f64a4497dd78428db899bda1fb","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-0.1.20.tgz","fileCount":177,"unpackedSize":1851425,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcDhMTCRA9TVsSAnZWagAAG8QP/0SPoybsAD5/G8EHrXey\nbBy6H6RDDfVbWkOecto75dcaNYP24l/HgjdziU4VtynlMrvdF7z85Onhyc8y\n0dSn0F+rkpzxRVy5PFDZnIEmsfnluk8WE5xbjD24+mxTXag3yJs7PXxjSI7H\n1ytYrmhTm3gJ9H9eU5WVHUl6MDTzsFcHXKvnJWmncAu8brLz8HukHKdsvU0d\nvGKQfWodmZpD1HCa35UKKXHmB4/GR8oruPU8FS3BjCORHZ6itGJFV6r/XfC/\nm1ItcMEKUjEt/uI2m6x3o2Zka//KwGhHfHwSMlZUofCrDETSORjEptqpdlg9\nC/kYHCx11MtudXuYnwypkcKdr7y7SwjpeC+mXSVyhw1UAUwIdOGXgmEWoaVA\ntc0pkMnDn03KYMkNwD2ehg0lf3dDx3jDoZndIhpmIDIqtTaFNT8ZM9OTz/1Q\nd1O14uP5JtsSVK5tjioX29fRlvlW+EGjAoqq2XNHaIw6Hyd55DVhSHRRsZMi\nf1wEjdmdsMUoLwNxsJU6ZXhnHU7WjBVUWUYxMt7iEkchiCeZKWN81hV7pbgm\nrw1mncAAGyLp7wBIxqdmKLuURItJeNKRs0b0vxdeR9fs9irWrvMO+fjttvRJ\nU12J0zaN9HbxHjGWUSkw0K0TQzgUkdNj5KeSHWAfKMQUZDh8CErBhFwsOOQj\nzrsz\r\n=c8rJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICqqac0Lbe0JsD2ZycHcJQv6OAzR4k/akcrD+U/ZvCqWAiAeKo5YhpR7wMMvc6eg9kSVFGPgE3mJjcZL9P8Mfr4tNQ=="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_0.1.20_1544426258979_0.20851330821908864"},"_hasShrinkwrap":false},"0.1.21":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"0.1.21","description":"spider build with puppeteer","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.cn.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","headless","chromium"],"license":"MIT","dependencies":{"express":"^4.16.3","later":"^1.2.0","nedb":"^1.8.0","puppeteer":"1.10.0","request":"^2.87.0","socket.io":"^2.1.1","source-map-support":"^0.5.6","typescript":"^2.9.2"},"devDependencies":{"@types/express":"^4.11.1","@types/jquery":"^3.3.1","@types/nedb":"^1.8.5","@types/node":"^9.4.7","@types/puppeteer":"^1.10.0","@types/request":"^2.47.0","@types/socket.io":"^1.4.33","markdown-toc":"^1.2.0"},"gitHead":"690382ba58ee729ac927334477062a75eaab8f9a","_id":"ppspider@0.1.21","_npmVersion":"5.6.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-7qrPuHNzXjily/BcrwyVaja+pVyH7U1MHN1BRZsTslnLVgWhtiVhORXNf1t+NusYDEkjzCUvQlb36PbItcUlQA==","shasum":"7a44362a0e16e1c8f0ee7539d7e559dfd4fe7f2d","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-0.1.21.tgz","fileCount":177,"unpackedSize":1854066,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcIE16CRA9TVsSAnZWagAA+iQQAJn7p7ZhGJBP3s7Y8TzP\nr8Svo+pl2IP2xd4zlSCqhU69Qf7o0K9w8oKlESPFr8ggaj9+lBfy8BHZw/Dk\nmUEGRYlCuPIb7DCUu14dMHwZLovleFJG4flbV06RdS6EkcL1iCHU46hpn5dj\ncgeOPnf9tutPvvdgqMrwuJ8S+d+SOejlFAQ+R5tugk2xf7pI5TvXBNzjy67u\nC1x7bk/ZPneOOSx+885viGTkz27EfeAKaeIwRsJHTF/t+reuUlOSb9juNBVi\nWYbE07xE5Y5N+vu0brQEfS8SlZnKXtCxF5/pfCoAIes0ihgW28gTh5Az5Zbk\nIYcpo80uXdnQPMF27yc4d5XzsxLXsK5WfU2QH8gC1ukSD0wBbZ5wOMMnd4xq\nI0oVYs4sJOD33UVGwl1wkr4pd9h5hEoGUdMTzxSI2ObmyKCmSM6AVOsp8JTc\nDaulxOQm/G55+71cQD+iXl1rlR4rV2LOa6RxKMPICtK8ll0Ikzn8v+S8vr9x\nU1cfAEp7pQMB84VvrL0rZiepuL+AbeB5MnyrggD7+8rLWjn9Wz9kHam1hiie\ndpaN6zN/ayboXQsAIBxoPNHkZ7BhwVVx5g6/oOAgBzsgKB4icmUn1p+mFHGB\n5y9nJdAIbte1bY4oe5UIZvDikRqjeAMIQrA2n64OPIlewrgFQLd/c0nZxMpa\ntTvP\r\n=nuK8\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDSALPPwfhs7Py/fkl7IqgfIJ3iduc9IRUNgnSfJnj0GQIhAOJN6z1AOVFo7rgJyR3Rn+SvPQZP050mgdZVNxGBRltt"}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_0.1.21_1545620857681_0.8777107002087277"},"_hasShrinkwrap":false},"0.1.22":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"0.1.22","description":"spider build with puppeteer","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.cn.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","headless","chromium"],"license":"MIT","dependencies":{"express":"^4.16.3","later":"^1.2.0","nedb":"^1.8.0","puppeteer":"1.10.0","request":"^2.87.0","socket.io":"^2.1.1","source-map-support":"^0.5.6","typescript":"^2.9.2"},"devDependencies":{"@types/express":"^4.11.1","@types/jquery":"^3.3.1","@types/nedb":"^1.8.5","@types/node":"^9.4.7","@types/puppeteer":"^1.10.0","@types/request":"^2.47.0","@types/socket.io":"^1.4.33","markdown-toc":"^1.2.0"},"gitHead":"cfefae7cf885f9084c81563c4e0cde75431b4d63","_id":"ppspider@0.1.22","_npmVersion":"5.6.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-CJ8D6fD5RRrWa4bIRUKuDxjctJC//L/2Tze0YCXZwmE8EUzx/8oPoMkvAHswH2ARHHYAoqUivuLOisMjBt6VXQ==","shasum":"38e4e5d8e9c52407040e8263b017bbbbe7147856","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-0.1.22.tgz","fileCount":177,"unpackedSize":1861538,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcTs5wCRA9TVsSAnZWagAA/lUP/29gkaBVLWD41FNvRR/1\nKJn3AZSjI0xsQcz+2I2XjxR0XtzSQhG82MUth4X3725dNKM1m6q6xup5Ar1K\nVEKFYFME4D/HLOcbwSM+Q2wa1yL9wbe05hd+P8GlRHAjUH3lfuQ1W27XQ/Nk\nvoHplvxmswbY5CgRRwJoDRrIIrLV6b9GGHHPpqtlogfDvcasT0oarLZsoign\nrKGKjQ4cPRRd0U6v9LHHbb5A8au8H1KDg2fafcEUhAISM3mQlkCLG/GpAhUE\nUkQ0wXA1LT3E/HoI5it2l4KeXCNJQUVhUhLHuU3azjJWsmYlLRrZ85Nx60Vv\n8ccDRmPVK1Hcu6SC4oTFXFtQOdnOUOYHveYM+h6M2896rUYscptfNvosUgjR\n79neQofB16RyenXCsSO3EbS3hfsD0XhKGjHJOzrptf8CUBj4L602vBatHXM3\njYqakXuXACxRanXtgnQO/c9C3vO8pzud2WooWj2t7CVrqP14PnnyL4Ed3DEj\nouLs4yM1DC9p9Lw5zxMxgKuzTAXRvZsbMxSYi/DBgoU4DEUmdOTw03uTNMfL\nG5Ll/xBudhGlh2ywOd+KkNwF6gmB/+PMipvWsiUV4j/5Ke61DcUagJYb0U/A\nfYbTjRZRFG11jbWaVC85yaLYYGotpeHl+unfFrYBZdDhEGQ2/S/WmSMJdiMx\ndXTZ\r\n=Hgat\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGqAriueOuisd0BUJaf3EvHIh2RNjq7bIPE4GoX4nPh7AiEAwIdgyL3v1I5yLE5TjI5uXl4yZRj7r4X5HegKCZiVaf4="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_0.1.22_1548668527255_0.3521331850363434"},"_hasShrinkwrap":false},"0.1.23":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"0.1.23","description":"spider build with puppeteer","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","国内用户安装依赖(windows)":"set PUPPETEER_DOWNLOAD_HOST=https://npm.taobao.org/mirrors/ & npm install","国内用户安装依赖(unix)":"export PUPPETEER_DOWNLOAD_HOST=https://npm.taobao.org/mirrors/ & npm install","generate README toc":"markdown-toc -i ./README.cn.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","headless","chromium"],"license":"MIT","dependencies":{"express":"^4.16.4","later":"^1.2.0","nedb":"^1.8.0","puppeteer":"1.12.2","request":"^2.88.0","socket.io":"^2.2.0","source-map-support":"^0.5.10","typescript":"^3.3.3"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/nedb":"^1.8.5","@types/node":"^11.9.4","@types/puppeteer":"^1.12.1","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","markdown-toc":"^1.2.0"},"gitHead":"bfef5cd57e70b0907a83359345914cda3b750b36","_id":"ppspider@0.1.23","_npmVersion":"5.6.0","_nodeVersion":"10.1.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-aX99j0dM1qtlTg8cKwhKlY7yg2pXfIKdrKAcHLixhrmT77QVbX0rqqdAaX0v24fz4cdioTK9skHN6omuPXt3kA==","shasum":"3b4250e58e59730fc5fe4cce8897fa70b5728c1a","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-0.1.23.tgz","fileCount":171,"unpackedSize":1841986,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcbVfOCRA9TVsSAnZWagAAuR8P/2RCQO76irXZRnveVL1E\nQxirpwoJ2oMC5Va206sTYniZTdNm5uQDwN0u7Mp78EvcBVjfY53qj4vkWk0M\nUbHOUCRA/OcatFdzuN5i6jRd6DDxqGPGlsk8tU0APjsY83rzXAeyb06OrBkS\naN0OJRtcjTg7VHDO2uVzIsdAjFM29YSlc1Lxth9xaLL8rWflSJi/p+0sLeZH\n4CQEXYDfuJnj6IH0xOeWQXP0ICVGzN+vQ/Ej2fe+H/EYXJadTp1fX18/PQTb\nJQIdI1ffnFJysapL4MMBLY2Xe6Hb/J4RPCGK9STUaDRiDAtaGuHEvx87PKS+\nAHB8w1PjMFA5OBmdgp1SR4uP/OtpdEORthQ/dgnMM34R0FFNjf4b0faiZZC6\nYTApwGvw2FiyKUUi4qdoO/aZ6lkIetsyraIaIPBCApPVeTlxCq86Q56nzan1\nb73846Yty+hFxbSaYDwvPkCYinJofJ1NY9hmD6spUMOjWTlJO8oqKWqZuKgO\nwDgCz30VaE7v5v1KTSun+ppqUW27qkhqJD+sls+Ho43gkFNlNLevzh3dYB0k\njP1oo4E2chmQ9OiitvXzj66G53pGt30fKN8DHh9f5wLGkP09Mw+jsQfW71K8\nE5mTSy0rbSBI68qdEiHO4Vap7Tqiqzwbj28J05paJFV2XZsxAaRswangj9+q\nnbED\r\n=OhbD\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCw3RAgtWJYoXAPugaPevTLPRfsOmD0V8FC4M3UQAtK0AIgZvrp3cBkzv2QAAAqU0z0YMMgU4WTOPDLR6x3GGnLuxk="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_0.1.23_1550669773396_0.9369233931460048"},"_hasShrinkwrap":false},"0.1.24":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"0.1.24","description":"spider build with puppeteer","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","国内用户安装依赖(windows)":"set PUPPETEER_DOWNLOAD_HOST='https://npm.taobao.org/mirrors/' & npm install","国内用户安装依赖(unix)":"export PUPPETEER_DOWNLOAD_HOST='https://npm.taobao.org/mirrors/' & npm install","generate README toc":"markdown-toc -i ./README.cn.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","headless","chromium"],"license":"MIT","dependencies":{"express":"^4.16.4","later":"^1.2.0","nedb":"^1.8.0","puppeteer":"1.12.2","request":"^2.88.0","socket.io":"^2.2.0","source-map-support":"^0.5.10","typescript":"^3.3.3"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/nedb":"^1.8.5","@types/node":"^11.9.4","@types/puppeteer":"^1.12.1","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","markdown-toc":"^1.2.0"},"gitHead":"f6ace76d431732db8c63bcae242b32da89fb3b0f","_id":"ppspider@0.1.24","_npmVersion":"5.10.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-EO0HmRpHIMBeoYXXMb54e4CUkPLQINioEEuOcsAwDO9XQhZ7MAQFjIzLBDi27yYuvqskV6AytgO/UytTrsfySg==","shasum":"f5bb3edd42bdf49618b71b5eac4efc9837730d8b","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-0.1.24.tgz","fileCount":177,"unpackedSize":1864383,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcgLupCRA9TVsSAnZWagAAE/MP/j5V7H7dy72jcZA06AAs\nesRazN4dGAH0gV26yE9AJvgc2wt7HOD2W5llvd/wNElyshfWNagHdpcIih7W\nQaelGjzU0ZH0owO/ujRIV9jd832lbNAmkwqKtr/hWrggKv/TRt1WgBAsQO2n\nKGqp24QUEeHrflK2XgbhlWdCAkkgNRCd1VG0UPv6zaklrN3hkzWlhhZTinup\nQVWem2ITGeFjAVAb2xMjNPNqTnyWJo4/y8e+TaAzJUcVBrb1lOwtMhlV9Mtb\nZqXP0i3RTxvqLhFueKrdBkf3jYDDNMTZGJx7F4I0QXoliYp7VoxxQxXEpcHL\nev4OLL5TiL4P57QgNb1ONeh1x62O+KY4TcXF0D3emrUk5s83FRGpQ6nA9Ii3\n7vPkUes75w2+oOzmkYRSVm4jivSbXIKl44oyBJ53f/ZLhCRfZl0tzr93WyDc\ndo+kO7hUcXfQnhNXxQU0kuz1vncoUPuwyfpy3mXaS3QFLpC2nQmhwG84H/Yf\n7zKk8/0UwfwllwzVHflKR0OrOT92du0FtZlF2/o5akDvsDD3uyelchpqOqtb\ndFL7aaaCRhnQdWh2ULJsK+t6HzoUpBt08xAcpBnNHNOZa7qFMLHebBrTb5KW\nYUGuhcUpCbQV3mtJgX110IjEjIF2y917mef6kTxNSQ3LIqE82/EAvUt4JUgP\n+x1g\r\n=Iut2\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCpHppZbE01/07ZBB9FkVjfPDwn2gmfWlxz7dNhurnnUQIhAMzpzSpQuOok1OXs6BCfdOYEif5dG+X+BFLUeebTkTye"}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_0.1.24_1551940520457_0.6908459510323648"},"_hasShrinkwrap":false},"2.0.0-preview.1554096924745":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"2.0.0-preview.1554096924745","description":"web spider build with puppeteer, include task queue manager and dispatcher","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.cn.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT","dependencies":{"express":"^4.16.4","later":"^1.2.0","nedb":"^1.8.0","puppeteer":"1.14.0","request":"^2.88.0","socket.io":"^2.2.0","source-map-support":"^0.5.11","typescript":"^3.3.3","moment":"^2.24.0"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/nedb":"^1.8.5","@types/node":"^11.9.4","@types/puppeteer":"^1.12.3","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","@types/moment":"^2.13.0","markdown-toc":"^1.2.0"},"gitHead":"5ca6b524bb8917bd118d8ea29a3bed22f0111e58","_id":"ppspider@2.0.0-preview.1554096924745","_npmVersion":"5.10.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-9agZF1OmiQB+7LKraeiITddfiem5Mzz3VR3YwrJNb9iIaDxrZ6qEsJWXNRLL8wfTjtQ5ozJ65Zx894duljhBqg==","shasum":"e5974e6348dd1cbd62d4528cb9e5fbf33db01fc7","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-2.0.0-preview.1554096924745.tgz","fileCount":184,"unpackedSize":3456042,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcoaZUCRA9TVsSAnZWagAARkgP/28nZc4RJy21XSmZiu5h\n2dM5uATaT7CWplBUUyu5LfRoMfaIUye4g+M9191RFKLBr6Fe+PZ+kHvCOPZQ\nomguPJZHLWukRnjNhnGKFkVPEoT7nVLmh8b1Qfw3XsL9WXzBoUkjWLGHcU6V\nqgQBJx48QlSvhxl6B62RK+MZhHON62azAO4sM5BfjtuJdCjMzCYpAfI0Y2+B\n0lRIqTceD/k1i5m8Iv042AD+fcG4pRHE3SIb4ipvdVRr+K9KPk10GS8bljev\nVmOWMiRgXJxLJNReiLurl4D63JPHI3reDluA+C/VPJtkrpgDlre2NfjdOoE0\nkGa60xKdidrpiEPXk9j+bMkCDyLFmbQABcBZamxvnCMT7Vd//XW3H/gFjBMr\n991hISOlzYX90v4/LZGaBFh30Mw/tLUmxct+3pObZhPNq/batYswq4SMES4j\nbkQvMP50giEa5cUgpmzwEvLL/HoFTX+Va7ABWe99VltB0yUJ58f4CIeEjzFV\nErfD4OhJYukv4CAguDc9fRilLD2tQWN/U6v4Heo1H+Qi6zxlM4fV4Si/jfIv\nwANw7xInjLMSHO/O7OFZBELdn57qqQWDMlOUeJcpEgDxQGW0vpZ3L2A4mG/7\n1zPRvz3aK3JfiHpGrWWSV7kJl1sJ6wFotCc8SCCyrAwBe2OPlKU4YiVTPmtL\nKsJn\r\n=FsWm\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDFAxLhiIoEuL9u2JGWu4n9R1rr9aoWcbI0krCq1zLaAAiEA+pyewma1mejS4rL3nzTHq2FtXXCoEpzkKh4ggwV+m3E="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_2.0.0-preview.1554096924745_1554097747589_0.8931774323317998"},"_hasShrinkwrap":false},"2.0.0":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"2.0.0","description":"web spider build with puppeteer, include task queue manager and dispatcher","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.en.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT","dependencies":{"express":"^4.16.4","later":"^1.2.0","nedb":"^1.8.0","puppeteer":"1.14.0","request":"^2.88.0","socket.io":"^2.2.0","source-map-support":"^0.5.11","typescript":"^3.3.3","moment":"^2.24.0"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/nedb":"^1.8.5","@types/node":"^11.9.4","@types/puppeteer":"^1.12.3","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","@types/moment":"^2.13.0","markdown-toc":"^1.2.0"},"gitHead":"02dbced53a8cadf61975760cac8e75aaed0e02c5","_id":"ppspider@2.0.0","_npmVersion":"5.10.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-0BCY9AqrKP+FX1Hqk6MhPI4kAfU4R3PCGMx/61S4g4+dMqr79GEoW1LYueWFkMxckRtrFR9viHp1CaPBX5okjw==","shasum":"6a6213ec43a51e5edee40b7ef7eaf4286bb28290","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-2.0.0.tgz","fileCount":192,"unpackedSize":3513260,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcpeuFCRA9TVsSAnZWagAASogP/jQ1CWUUHw1jUEPavIcQ\nvIP2Zz4sBNdhjpP5Dg/Hky5wdIeQbXim5wz+Kgl6rZ1qBD3uEVcyVILedlaY\naIQD6IAC1iZWZfhhG3+Fh8vQ5Rp8oDpItTonA1fqPKJQe0DO+ZFOq0io4elA\nQIV+81Eihg5IjYu+WcBChBfvWikrqeh0AR1H2gvLu4bT2G9aP9h0fXbQbyW0\nBwM2Ca/ETMCG7saY7YBYXUIuV5EPW1OrRlgiA//dcETkFyirTpAy0MriU0KS\niX7zWcLrP/6hpuaMw7naRpXk4BpeQMYBW5leio1gRmOKCUSZ86Gt0YBdmS59\nRYhzhXo+W+YF/8iGKLoKAt34YAk1QJ8zoaNZ62hR9J8vbj1ElgdSUQl6n/J2\nJAkkFWduomNGAwX+K8S5BPc6H4H58VOmtuHkKkyiXH1o3HqrQCTbM1qTVJJk\nyj7Mx8d/GAy8SBD0ZP2RYa+joU5lxrcPuOJG6Q70Um8HMrR4MJCdg7ceiTij\ny4rBIhh9gSX38ry7CL41lbHGwVwMpB+WGAFhUMeCE25f36pfVGQtZJc/7ien\nkox+4uRLDpwvB9+gBVJwGK4A51PldUkBabrEwL2hxnMQAikdCEE24nCys0+M\ne4zes3DCOSBUFA++Fk+lcab+oH5UqJHd7b+wGA9Bpjk5k1OWallj7fkPrFGj\n8HYF\r\n=XVGY\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDJgp/Nt36ay48b48+6Gw7pgjEWgPjhiPEMcyTYxOepuwIhAKUxZd8jyxxs9nMDK1tyIEG5zK8NkwNDkFwhDHSZ91cd"}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_2.0.0_1554377604937_0.792887519056775"},"_hasShrinkwrap":false},"2.0.1":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"2.0.1","description":"web spider build with puppeteer, include task queue manager and dispatcher","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.en.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT","dependencies":{"express":"^4.16.4","later":"^1.2.0","nedb":"^1.8.0","puppeteer":"1.14.0","request":"^2.88.0","socket.io":"^2.2.0","source-map-support":"^0.5.11","typescript":"^3.3.3","moment":"^2.24.0"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/nedb":"^1.8.5","@types/node":"^11.9.4","@types/puppeteer":"^1.12.3","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","@types/moment":"^2.13.0","markdown-toc":"^1.2.0"},"gitHead":"67924049d461669249fce5169d9c3db107ae3f39","_id":"ppspider@2.0.1","_npmVersion":"5.10.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-3pLnjVkwVJDMSlytKDKTue2Imrz8JzfOmGGQbQ9e7LCdEcea9DFYzfU9YzfHbRQ7wOthGQGt3uS4HSOlAsmYYw==","shasum":"d582075e1f2c0b11f7588734ab609569f75230ce","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-2.0.1.tgz","fileCount":211,"unpackedSize":3574195,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcvTNACRA9TVsSAnZWagAAvu8QAKHWJ8GxK8ugKfiLiTCc\nF3s4jtchucydmrO33g+e35Y0kp+YgnF2XKcdpJCmrkKNNlH5DFXZaFhh+8gx\nZyNlRFYkX5z2+4/U54W1N7OtDmGPkxbb6PiCSN8EkjPfWLaogYg2a5veHhvv\nEb8pRLPWRDXpAv0j2J6sGKHxB//lANnGoxD5CP1IWkGQX301/QdZLogmErJi\nsnwJ2Log/zx1iuNWaUSfQ0OnFofLrcULztVwkdU/x9loKjZGzSDFItUWpz7G\nCeV89CHKOXlTZnVKTozEP/WcaQL6HRogSJ+jq9QNAxcx8RrUlrjllX3+c3lG\n7Qs/CDYpygQ5Hxq/UW9HF5Q1b9LfWSF8fThYSTxxnKq+whyKCXyehkuDH9uQ\nU3kViOwQ9GrPMTgfsBNn+dOfMP0kH3n9U2ImzxUzLUKzurl5Eykl4ThYpVoB\ndsey0n1fyPRDd5/4AuZRj9XyYJzn3woJ+97czlyB95WhUAjBS0RDBknxVFaq\nwGEtuT47E2Lr03D1sZBaWgAmNG1qYn9PidwNg6GVhY4g7VbhCDCVRZhpSazB\nxZW1LZKryHOUB4r83MWEeDi1fudMu3G5eytnfPvONWgqR0LwlV8Mu0wtWmGY\ngGF4MrKoS/1FOislsjZghRO7ROy/k/nqRGgYO6nhXDSm66DsrpG1c0y/9eEa\nAthz\r\n=K2sP\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDGkMBt1pl0ayIaKa4FpZhvfzD/QGVt3UOIbIuXYluLVgIgFc9MgrbMfqCyS3Qx0iBGXmOSysvJvURvG+uzK80X0yc="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_2.0.1_1555903295369_0.653538195066995"},"_hasShrinkwrap":false},"2.0.2":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"2.0.2","description":"web spider build with puppeteer, include task queue manager and dispatcher","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.en.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT","dependencies":{"express":"^4.16.4","later":"^1.2.0","nedb":"^1.8.0","puppeteer":"1.14.0","request":"^2.88.0","socket.io":"^2.2.0","source-map-support":"^0.5.11","typescript":"^3.3.3","moment":"^2.24.0","ansi-colors":"^3.2.4"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/nedb":"^1.8.5","@types/node":"^11.9.4","@types/puppeteer":"^1.12.3","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","@types/moment":"^2.13.0","markdown-toc":"^1.2.0"},"gitHead":"5095ab894654090dc2d3417a2a6862bd6bf68907","_id":"ppspider@2.0.2","_npmVersion":"5.10.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-jKrh7WZfX32cX8in2AYPtqXBAHHZ3/f5UiJrlxF70vHdGCS2YGFmpjPFa9mQQgsLWnUXwCVJFJuAuRubn44sSA==","shasum":"df5e5d551b6e0ff6dd3422642f543ec2cee9119e","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-2.0.2.tgz","fileCount":211,"unpackedSize":3577733,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcxl9BCRA9TVsSAnZWagAAVVUQAJnRArZ18XO9/rwblhcU\n/mG2rEvwIYf+gQAjmJf37/07GxgRUM8ALcXoQNnQtm89seLCR5h77+dYIIeg\nei7lcLfXwd892p+yAlBtZjjwISG3YG8vv8DMbJPI6BvoWM4gdn/JhWusCBto\nNH6wEmjKlEuDFcKg9NxljhX3XQ2FWLTfO4SRgSgqD373l9O+1mio2Eh+0Eej\nOZtC20+//j3/1JzwZ4QgQpXzcg8IiOclND+eOTUu/FLNgwSaoHjKjK4s3lI0\nCgPC1lqaLsabDEuAhy5L6+18TY9I0R7JCmEZiOX8tVXEGAf2IQ0v2Kmo/MNC\nm7vAW2adbf7hMb3yU4Nc61bVw0Wdy12s6s15apb47ctN9cBXx/3TPRqYe9/S\nD+1ALYbwv66Ob+MgGxOh9KAHscdjxneCeRucJ8H/0bIINY0UFi/IYHrO5TpF\ntkrCbWcfPhBhra1Fc53fE7vOPnjoumgj/XRXsXrVGg3lkwl5eJ228mWEzMAc\naa5+Yi7ERCbatze1bTtzh6zo4wzBxQFNjpO5JtUjlyCUp5eZR1zZN2eibmDZ\nlkteeWTX+I9VqQvaChM6XQZeGwTX9YknpYZc/KzeQN5cp53HCvhG0KH1FJMr\nD/ZvAUvoQyExytDw0EKwTNCbyPYibp/nkQnp9xWepMHl7OReEn2J2v0lyQb/\nauL1\r\n=WnP/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAWkGzaTdkgvoH66y90mzTUWCtQN9jO4I6MJSy+HlEmxAiEA+EnKq6AStpV5N7Tr2IJp//L6cWznW4gYNomb5hN1h4Q="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_2.0.2_1556504384506_0.5868014287027414"},"_hasShrinkwrap":false},"2.0.3":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"2.0.3","description":"web spider build with puppeteer, include task queue manager and dispatcher","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.en.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT","dependencies":{"express":"^4.16.4","later":"^1.2.0","nedb":"^1.8.0","puppeteer":"1.14.0","request":"^2.88.0","socket.io":"^2.2.0","source-map-support":"^0.5.11","typescript":"^3.3.3","moment":"^2.24.0","ansi-colors":"^3.2.4"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/nedb":"^1.8.5","@types/node":"^11.9.4","@types/puppeteer":"^1.12.3","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","@types/moment":"^2.13.0","markdown-toc":"^1.2.0"},"gitHead":"dd53b6deb8c4c51c2b6a437299530fa1fcf2e2ac","_id":"ppspider@2.0.3","_npmVersion":"5.10.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-f6uCZY71KEsVj1lKBp/tHyXA+B83cFKAajJ6x0cKYX5aB8lQPJgip4PpoPAZ8qQXXAIDPRKFxmryNG/3UisR6Q==","shasum":"9415b3afd9c50c7dbb114e8cf9a5550b50910375","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-2.0.3.tgz","fileCount":211,"unpackedSize":3587154,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJczpnPCRA9TVsSAnZWagAALhsP/iZTXP073OeM9eX5kAQv\nmE/xcZjvqlrBIf9khNygOlnu34hMYG+2zWdmaAodu7uzAbZ7lUzJIYOX/5zx\nZAiF5zGwwkiGOFQpQWBp28Fq4nyxSj4YQgOdge0cBiAgCcsNfwtIZy0AUo2m\n4wUgUIiUW0hJvO4sEFznOO/hMevTQqDIZA5cTosL6QSiEMVImmt2e6VRDedO\nFdId/0Yi4HJlJLI+GC2OW1O5rEnm4853g53MO6k/AoLho52wdEp0Oq+EUzVU\nuYdpTwvcF3ozlN/OVbDpVJpSzv22xnsiE5uiAPCoSRQtVymu0u8kX5/x/s27\nnnSn4NJO1c9oISGGDWJIlyeTOzh72A49ke+/X13Rd2NtmNDXokgYG4NC3/L0\npkLhKE3YkEYc8+OBXt6YNmZqEFgzp76EzvYnE0hHGxRG1KahbHTAicrGeN9m\nNgBHswMJ1e68c0ukAbEJ1k2zU2lXuCOfJ8CCLUF/fBAULLSJF/fQUHsRi8sE\nIQobJB+RrrhVgcdRe6pPqCKK4pdkNyLU8mAFynYjXO6tje/G1QsKW37ZkKBr\nqOLUTFs4mZKI+wuIlHo65bB7UkIlt9lGXC4GYVuX69QWTUcOoqpdyC6P5cL7\nrpVGXTthkBRxOW0K0a6soQmzWDvmhdRgq52E5UPqKVsT+CaDMRzfkSEeNbXT\nMQRH\r\n=d24G\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAk9ZYxTmIo2SSvcxXMVJ+/DZsxYjoau0bTlUHikFI6IAiAbCfuvIYQnD7lcieah/B0J621oPgmpRg27EL1I/0RtcQ=="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_2.0.3_1557043662223_0.18316037428615184"},"_hasShrinkwrap":false},"2.0.4":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"2.0.4","description":"web spider build with puppeteer, include task queue manager and dispatcher","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.en.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT","dependencies":{"express":"^4.16.4","later":"^1.2.0","nedb":"^1.8.0","puppeteer":"1.15.0","request":"^2.88.0","socket.io":"^2.2.0","source-map-support":"^0.5.11","typescript":"^3.3.3","moment":"^2.24.0","ansi-colors":"^3.2.4"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/nedb":"^1.8.5","@types/node":"^11.9.4","@types/puppeteer":"^1.12.4","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","@types/moment":"^2.13.0","markdown-toc":"^1.2.0"},"gitHead":"7f3b14dbf36bc947b3543333e8c9ba2d267e8038","_id":"ppspider@2.0.4","_npmVersion":"5.10.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-B7vhNZVNroRTlRIvu0x0N+DemnPzQArVCDJqnlc5Nhuu6PeQRrY2eVGNprTR7Wh9vLAS/K2XTbByeSBvmD2CvA==","shasum":"1940c50328a50a8dbf17ed706de05c74794cf8b8","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-2.0.4.tgz","fileCount":218,"unpackedSize":3614291,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc0qo8CRA9TVsSAnZWagAA7jMP/i2qdfC7BUggMBTopilh\nGGnul1/Nu18ueStsqy/+Jwuejxxer1ljg3vniAlLAntQZxWjO0oWOS8Iqyy7\nEAQXe0CJ0JrI6NZuLrklK7RebWzGPQzPD4HVA5ZRMGucQL9dhHFWB3cd0wRh\n7KWiPfCP6LlDKTtgbiR1rggU/qllVFWJpUjsOn3x99xTqkGxwpmLeuhS+UJh\n74uvXKawU9MVionr9YlrVLCBlOH2q/rfc8/F+mRfp73qSdwBYXnZEC0G8wSg\nCqVHsu3WAoSCgWfA3D7jtg3ETeT8G42wG1DBTHnLIvTUHoXLsfimsEGzHNsD\n17MNM2HAZDVYiqwq1QFIY2GXPPqzJltXv4AuQqovLyVEYWerJy0Bo24V+CcV\n+9lBv//exP89WyRB0/9m1DCjwtAyrt+StLPfO4AQScp+XRA297W0dNCqUkfG\nLf55/6Cd2+5H5tTzxeKVjaEIarS0yjvlnyQs8TptVY4YLWJs85/juTa4d6pK\nC4pI5QlUVGMT9TCJtDuvknAcoqyZeb0a3MDxbYUKnJM6GAZhnVUZVS2X77js\n+R4SIIfjsTYEzZKbtdfgDrJNdjO4d/TecprTa4ra5BqAI6d0YidMNC6JGyYm\nNV6ZG913ioNpelFUZ8KPqewuvT+rTa4ejsKHcycOL3q1GB2z7kXtXOe+nNtg\nyR4s\r\n=kg3S\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGk8CddnPY7QBESHfLUIUBrfMANa8sXr2dWPtkVoIV85AiEAhiQFZw3ux+p/Qo/cY/cdYdoRHU4pL+Aj0q5RNBJ13Ck="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_2.0.4_1557310011977_0.7521257661523066"},"_hasShrinkwrap":false},"2.0.5":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"2.0.5","description":"web spider build with puppeteer, include task queue manager and dispatcher","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.en.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT","dependencies":{"express":"^4.16.4","cron":"^1.7.1","nedb":"^1.8.0","puppeteer":"1.15.0","request":"^2.88.0","socket.io":"^2.2.0","source-map-support":"^0.5.11","typescript":"^3.3.3","moment":"^2.24.0","ansi-colors":"^3.2.4"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/cron":"^1.7.0","@types/nedb":"^1.8.5","@types/node":"^11.9.4","@types/puppeteer":"^1.12.4","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","@types/moment":"^2.13.0","markdown-toc":"^1.2.0"},"gitHead":"9d06f078f7b3d9cb12a4ef4449441dbe85211fe3","_id":"ppspider@2.0.5","_npmVersion":"5.10.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-fKsJrK1xs3B77/soGo20gNhpmWJHpxhYs2dNJZTwwD4aDJYCYKOAh6Os8GWj3ABOht18CeOTJOd7mb9FDa9xpA==","shasum":"273e4c5e7660b3d473346f3799d53a2d9b2fa803","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-2.0.5.tgz","fileCount":218,"unpackedSize":3619705,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc08zbCRA9TVsSAnZWagAAfX8P/0XMIjzv6dDSpl8xjLg/\nLt+aOWaC+wlytnGb0oCe9IQhAZUilg3i9wrcfeFuYDnePSY0GPl2Ll5UmkmZ\nWJZKU4u8KJpcZcuQi1UcfG/9TMJaodmPBxRAE3oSURp0wH6N+lzhdo291/hJ\neXFiHLyJ1cjw3YPqN5cWYzu+YwVpVlUDL9dod4FEyywNcnI7DAsevSdiO/V3\nRpeznYpMu5izDExwGDRJPd5/BmVct4yZgIRd9yXx9OzFrlaovnOkLDW6i7l2\ndJi1WZPzYfEUuiiHz4kncu2wWnDO3gzxwzfarhLWUS6y73cIiyCCon/uRSpf\nivyXHTdf6xS6BbqWIi8qucGS6zv+QxOljqZ6pX6mMiO3Xk10sLB2IDh5uzFF\njXNj3qvN/jVksIcWJC2BxV9GSCXBIaLdDJ2+TdPke091oSfPF2xm113/O22N\nL+JFVuReiGOcwg2VRhm8PK72YjgcVmCf3BS+inyhkT98okSh8Dy6MtyAmgGH\nwrPXq4znISm1nZG3OG2j0h+KwSeyhwZ1emvEs7iRfI3vD0VQOWqKTEIW3FGH\nkPjKUVb5FV+GSu20twPcJRC2F19zoLEPc/HkM9ZTZQ9fgP7w2aGHR7c4Q2B8\nAEYNFk6u3moXpg9ToPV6UvWxCPnZClAaE3HkHQYCvGYiNNNOA1jMT8SBcMKc\nzZpQ\r\n=tiiA\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDSkCP2BxJRxAtdv4bg+OS+akeE7/ZyEOOpF0H3uJ698AiAbTN5AtIP/h4Z3inyws7+cFXuK4/jUovOdsRxoUF2t7w=="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_2.0.5_1557384408740_0.2865599215521304"},"_hasShrinkwrap":false},"2.1.2":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"2.1.2","description":"web spider build with puppeteer, include task queue manager and dispatcher","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.en.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT","dependencies":{"express":"^4.16.4","cron":"^1.7.1","nedb":"^1.8.0","mongodb":"^3.2.5","puppeteer":"1.15.0","request":"^2.88.0","socket.io":"^2.2.0","source-map-support":"^0.5.11","typescript":"^3.3.3","moment":"^2.24.0","ansi-colors":"^3.2.4"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/cron":"^1.7.0","@types/nedb":"^1.8.5","@types/mongodb":"^3.1.27","@types/node":"^11.9.4","@types/puppeteer":"^1.12.4","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","markdown-toc":"^1.2.0"},"gitHead":"df99bdc499b0e8f397823eb811d460cd34fa7cb5","_id":"ppspider@2.1.2","_npmVersion":"5.10.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-4r1NzJXA8rsFlQMTTBGRpcTCWgD5LWcCz3FjiSq4OOPOMzMsASfzcpfeSygua0BO1KBAkUYMdtQ7waIawSQdGg==","shasum":"a5d5ef72b69a37feb762752e8e8caba1ab142cf0","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-2.1.2.tgz","fileCount":201,"unpackedSize":3618437,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc47q7CRA9TVsSAnZWagAA2sEQAIshf85KoMkW6WGhDG/u\ncdmhwv+V1FrztjFO3eeKoFzV1sU6rao2KXkcXWonqXqTnzG0S01k1QjNYaJE\nlNuFJY6FymYprRNeSg5Wp0Iw/xPF0SgU3wGMRRQxQ1s32zOi7vFYqGpLH2wz\n5/t4NWigLf0UbCuSW1M6gE/QEWXYYEE3HcyvroBiE1psQraE88Jgm0K6mj7+\nEqKyZAcPAlPFxT7Ddg7DOG4McMbu+tLtgJJ/7sJqsp0r6lk/GhW2zEKea/fx\n01Z9ne3ohRate9MD35P2/pCr6X32GY8V6sxJp0xRJjM4MwSw3a93YImdjOS5\nXqClYIwvwXOHr/g/o53xiUIMl1l8UcyVQwiUaQowP6NrDl99HNROQqpQ9VSk\nCAi+E5PSkTBLhJnv3Jj+12/my3c1nx+v95Rwd5+34+RIdZGnSo3mKaUtaMV0\nhT0akYYIds6qYHKuPs3yDwYqJT5Of0dLM4ZpI1Ef29aAr4+LohWTnHfndqqf\nG+F69LGDM2Etw2ODYo/eRBtAVnyHqJAa8nExLrMfAHRsrWGEI8SEwPuLNyVe\nSxu61SCMCTDIk1L77wY+0cLfdMS1mJMA2aRfn1mnh3G+zOBxFbhOh9R68A8m\n1GhzXzHGwRA56RyWQAGy6L7pZvVKAqMlo5hVLftvnOKmCXRANlvYcK/+OxBE\na9Qf\r\n=UOCt\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC92Gfyf+b40znjW1d2tJ03R4qUIVFHjvBq1nCmDHp6pwIgOl8SPQoosUlkSQRceqfbPEY2EC7pev/6+h/4Z0fBOmw="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_2.1.2_1558428346980_0.9002101550065709"},"_hasShrinkwrap":false},"2.1.3":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"2.1.3","description":"web spider build with puppeteer, include task queue manager and dispatcher","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.en.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT","dependencies":{"express":"^4.16.4","cron":"^1.7.1","nedb":"^1.8.0","mongodb":"^3.2.5","puppeteer":"1.15.0","request":"^2.88.0","socket.io":"^2.2.0","source-map-support":"^0.5.11","typescript":"^3.3.3","moment":"^2.24.0","ansi-colors":"^3.2.4"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/cron":"^1.7.0","@types/nedb":"^1.8.5","@types/mongodb":"^3.1.27","@types/node":"^11.9.4","@types/puppeteer":"^1.12.4","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","markdown-toc":"^1.2.0"},"gitHead":"30d6cfb43cd2929f93c1c1fef522dd54e2704138","_id":"ppspider@2.1.3","_npmVersion":"5.10.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-HWugAMgH/Njs5dH3uZ0Kf9efOlXs8l3nWCDQC5M13cUuh8MYl+A8y5Xy2CBqwnp6YnnS4d5gQhBlZI2koXxNpw==","shasum":"8de2353fefbb2353c3f6b9536d432a882bab6ec2","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-2.1.3.tgz","fileCount":201,"unpackedSize":3626840,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc53XHCRA9TVsSAnZWagAASrQP/j8WvkRCOgm4wQ1IxYy/\nrPDaJnZwAbTjwGFfMYU8e9KRoyZs1SdaCtsMwbJF7Majmgg+e8ZzI8oQ+rpC\nN24Ib3cFWt45RkXLvFPNorivdZwS56uWMDFlxiEiM6qgIjcyr2PkdN1oykEN\ng5UkRUCNiyVpk7/7VZyriK2vPt1+3BLOl2DKA2OSEi1bKuU3MFMFhjxW3Ugh\nyY8HDIMcV58nzxKjW+PeGRCriyTVVjSCpPOR25HTh7qcTBxSonCYwVbzRec/\n2g7W4s6rRo1i2Hg1C0lw/BWfuu3B3hASMlk20pC5FASf4yv3WpV+cEPM7AAP\nmF5glfSfd4nWI75jFdGrZAT6nRJuj9GIL5vGvaDxYJxwa2Kg24Zddn9fKBFI\nrE/uIa76fE+SLTg4iPolivttxFrNZwLtxLde8P83Haqu+gujc8iX6tfyglLd\nSSGtZaFb3xX3OtdArPhKOR7WFDazmt8UVJZIsAKO9yA3WWPCae9eRWz+D8pT\nv7v5cv7YGJYEQfM+X7B40oxrf1WJrZm5OAHGTh0CaCte0+EGGTu2ZRZ2nOi2\nTiEfCx5vuSbblGZSbvOonrCcbSEgQwrwakqIkYnMGNSzFeCw9ZBsfiSKJiK9\nAWtf+JBh+V3kCzFNBli84NmY6/6ubgNIMMtB3NaO2gLK5q+DTlWEZ2ZHdUBA\n6WFz\r\n=9Zc/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDWTqpMLDrxKjn96WPjDtiX+hftu2AH19d29/xryCzy9AiAZmLolv+WWyZjfEWOxqcnTkhiUDN2TRyYxVPVb/eTHKA=="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_2.1.3_1558672838694_0.4843295760959163"},"_hasShrinkwrap":false},"2.1.6":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"2.1.6","description":"web spider build with puppeteer, include task queue manager and dispatcher","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.en.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT","dependencies":{"express":"^4.16.4","cron":"^1.7.1","nedb":"^1.8.0","mongodb":"^3.2.5","puppeteer":"1.15.0","request":"^2.88.0","socket.io":"^2.2.0","source-map-support":"^0.5.11","typescript":"^3.3.3","moment":"^2.24.0","ansi-colors":"^3.2.4"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/cron":"^1.7.0","@types/nedb":"^1.8.5","@types/mongodb":"^3.1.27","@types/node":"^11.9.4","@types/puppeteer":"^1.12.4","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","markdown-toc":"^1.2.0"},"gitHead":"06f47a15919468616086dea408d34d690df76bff","_id":"ppspider@2.1.6","_npmVersion":"5.10.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-08HyNK+h0cxKCRwh/ulvb7LOASW+W60kwW9hSbFkXQ6JhjJr8MfIEPLk8tSAPBge+ZWtqYw9Iwb08KUvkEljoA==","shasum":"3fc9b85ee861d8ad6e3a5e1866fab6919266d42e","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-2.1.6.tgz","fileCount":201,"unpackedSize":3629583,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc7TZNCRA9TVsSAnZWagAAisAP/1O3mMnvD3oCZxtLquxO\nZbP4U1/Dbi9WJ8I1aw/AjikTmaWRTZw6WOrszW2x7YM3GRaBYP+dV5CrT27w\nj3xRM5If6wL7K+vsP0C+HftEvC3B03VOKNX2sjPNK0ESfOgBWI1C2u4J/l+F\nxNoHIrRHpu30Hr++v3OJTyiJLAQsQ1peploJAspFXJM213Can7t59kMRCZ8S\nT5xBql5//EBWcmFSND+3URSXjZT4e+3+2cVMZLXjdirZ08uO4egwb6Z2JGWQ\nodKAlP+tjfs+UGcbtVJLxswkglqf6lXy9OOJWu3A4E6f13GoGdcFpz6JGv8e\nkyE3vyn6shqcZhwnDkGZwFH7hveu9x+pedKahJ4jtTLhq2sl1h/Y03H/u2om\nMYXu28Ys1Wp0+RnLWx0hGhbD5Uhz7dXInTA2Q9itqqUGTnbkotTRVimauctg\nIzYTGcpidpY4/tiHeOeCVYk36fwYGFzwSNeK9yAVZ+GENsnrIjVFJEuHeTy1\n3f+myq4wrv2wVYU74BD9zURJkpf7gRul9zjgH8CXYj5wCKx5W+dRNmzD78gJ\nRi77dKlF8e4YTRge/i3OymUMrQnMbLzzG9b45ZXNGqEYAroqZmgVzieC8rqH\ncWBFkHnmhZq2MYzVk73aDiXNpuFQllhz7elXT3NvV6HpuQR5vZxnQ2E5hNHk\noyU4\r\n=SnGF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE7ekbrtLtCLcRVFllT6NCvYWEZIgLUoaP8CDYVBezJ4AiB/+sxbbT97INqO6S+dR7WB1gXud+rZvljvKeMo/104fg=="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_2.1.6_1559049804122_0.011995223376973785"},"_hasShrinkwrap":false},"2.1.8":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"2.1.8","description":"web spider build with puppeteer, include task queue manager and dispatcher","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.en.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT","dependencies":{"express":"^4.16.4","cron":"^1.7.1","nedb":"^1.8.0","mongodb":"^3.2.5","puppeteer":"1.17.0","request":"^2.88.0","http-proxy-agent":"^2.1.0","https-proxy-agent":"^2.2.1","socket.io":"^2.2.0","source-map-support":"^0.5.11","typescript":"^3.3.3","moment":"^2.24.0","ansi-colors":"^3.2.4"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/cron":"^1.7.0","@types/nedb":"^1.8.5","@types/mongodb":"^3.1.27","@types/node":"^11.9.4","@types/puppeteer":"^1.12.4","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","markdown-toc":"^1.2.0"},"gitHead":"754d9a59ff6537372e7292c9e0952ee8f40f1f7a","_id":"ppspider@2.1.8","_npmVersion":"5.6.0","_nodeVersion":"10.1.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-cmvvfFaLUm1lqY9e13rsRp1sZiIBzEIBj9oTGM/Rw5IRcQ9aBs3k+iWnbEq7RzuuBW0JGUuxyWS3Ao5kEcXlHQ==","shasum":"8be113c5e2fdb41628e3ba70685a94c422389322","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-2.1.8.tgz","fileCount":198,"unpackedSize":3644578,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc8+7KCRA9TVsSAnZWagAAf4wP/A4lTAqjibIYFRJw++sN\nUSCy23tPtKrEPCyO0Zpk8vo5mHzrp2F6tYE/rx73ETB0IsY4huKuWfPDfzfI\nMD/jjQlLxhG1GI90+pMMJdtVgVfVPSBqntl6kAmZ3+x7o02KxkTerPFcvfFs\n7CTIZNwdSbKwyNIxj6dQWOK3bgOsKbBDz05pRcJCOYW+C6mXXAoxht7U6iPj\nXOOuGrY9P8gZgKen2BPD65e3kr3+R5ghOvcSsgFS9ceDr0lEpqsfqlAeRYqh\nMdCVsZb8QljRWTIhkNnky2iqDqrKvOFBmuue09RgSIIDknuCeAFqV3HvP3ks\nj9Eq5U+MtBKQAAJxRvkmIVw/+ebiN2bDBpbPTgOO0S362TbY7Vriu6u9iiH0\nP4Xcz+PoIS9GnZJ0KigYsVyvhyabeE5cB9cZFpd2aIxgSJB+5S0dclq+IKIg\nvHQFl2+sx0Mdnh2cPi88L1dLDCEzMDW+zgbojv4WCiUR7gGT6aHDqkSby4yZ\n/Iv6JdNbMkkbqhDHfUtvnwLOJmrwQGR1pGw5yJJKorgbpc+8lW6CSuPXlMf/\n3j2k3dWWYnPON8GhlCnOFw/dlSKZFGFji3gc4NgozDT19Tb9NN+IJte9uikO\nyPf8qDFdz6KEYlaWvhycEe2Wl1LfAMzfLyTkKWKOpLZZpMQcsLgVkxQv1OHr\nBNqx\r\n=lECh\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDjeMb1uYMir9JqyJQoSzU2ig6xdMyZMz5jBFqVC+GrwgIhAOVrXAvF6PD470+ZT5Aty4beIwvcacWgp6AHqsu7liAl"}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_2.1.8_1559490249912_0.7306679139798249"},"_hasShrinkwrap":false},"2.1.9":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"2.1.9","description":"web spider build with puppeteer, include task queue manager and dispatcher","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.en.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT","dependencies":{"express":"^4.16.4","cron":"^1.7.1","nedb":"^1.8.0","mongodb":"^3.2.5","puppeteer":"1.17.0","request":"^2.88.0","http-proxy-agent":"^2.1.0","https-proxy-agent":"^2.2.1","socket.io":"^2.2.0","source-map-support":"^0.5.11","typescript":"^3.3.3","moment":"^2.24.0","ansi-colors":"^3.2.4"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/cron":"^1.7.0","@types/nedb":"^1.8.5","@types/mongodb":"^3.1.27","@types/node":"^11.9.4","@types/puppeteer":"^1.12.4","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","markdown-toc":"^1.2.0"},"gitHead":"c2e3c1debfea93e31a3a4063b39c60a0cf7f113a","_id":"ppspider@2.1.9","_npmVersion":"5.10.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-Y66flXLNHdz4+BwjVc5PA+iAGK5Qr24M9mBjVU0meZvyoxZDEOOPxexTWD3RgLPWkor2/6DQJAkLUJfX8rc/lg==","shasum":"a9545cb3cbb7b8c8b3b683c8a1413b7045732952","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-2.1.9.tgz","fileCount":201,"unpackedSize":3662032,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc9LTvCRA9TVsSAnZWagAA9zsP/jjqTDXpf9mne/sE47Lt\nL31oYfyNFoykgHepi+Jq4OlRV04v9/Lt3kTsLLvGAqiqcdH0g9TnU8T6L5GK\n2PQCurMOFl/lx9fvGbJE0Bcz/S879xAckQSxf8Wmw1VzQSEXKhIfgXIXkyju\nSddqC54Fgj1hlR7UEvxsWf+JLxfe6sJzkaU7kJ8cklfc68nD3X8iKbrJqhMA\nQeXVeeP5l+XAy+85yudYQ3BBgCGAJkxjj5yQ2uxtkKu8Tk+sf7NMz8gxzwXG\nYHG15V0wsZwcPk6IpQj3r+w8caXMMuuSDqPSAdYd7ZC57yVNXWT6MfnYRKwx\nXolynvG5+LcDPiAKvxNa2iPsZTNTrx+oyOOaq5/eOVfZT1ibYtEV96DxIhqg\no9JCio/tbmx6uTtnk3ORs4n5iojqwPC63D7XpGokRCvVYhScECoYzAuvGjnK\n5VQIWOlmnCBgTLYsr2XrRN1/NerX0eEfNiQFLmz6A2ClzCOke4Ybg+6RHMes\nkZwBqizjem2W5ImGdTGK40R5pBNdLnzYPXK7RuWFAKfBdPbY9hfRxzD+zalp\nIQlHiUvbgWVFOfx06qIVPvC7YUWAE8edKKxuJ7zr0r89FaZU6H43IlJUIJIa\nZEEDhnnqJB9x5WGUx3EXiFPS/hT876TLaCbhIz5+Gm7gMv95/WiY2uQQvc5Z\n0yRc\r\n=7Z+w\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCrptWfUhY5KR+HcIDzYeGUK5iDrQpiLWtohvG583v/8wIgd2jJu4Nt40cQ7BiG9XWiI0R6sjpNBIZAo3LVZE0H3Y0="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_2.1.9_1559540974535_0.9640205541382274"},"_hasShrinkwrap":false},"2.1.10-preview.1559713782910":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"2.1.10-preview.1559713782910","description":"web spider build with puppeteer, include task queue manager and dispatcher","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.en.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT","dependencies":{"express":"^4.16.4","cron":"^1.7.1","nedb":"^1.8.0","mongodb":"^3.2.5","puppeteer":"1.17.0","request":"^2.88.0","http-proxy-agent":"^2.1.0","https-proxy-agent":"^2.2.1","socket.io":"^2.2.0","source-map-support":"^0.5.11","typescript":"^3.3.3","moment":"^2.24.0","ansi-colors":"^3.2.4"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/cron":"^1.7.0","@types/nedb":"^1.8.5","@types/mongodb":"^3.1.27","@types/node":"^11.9.4","@types/puppeteer":"^1.12.4","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","markdown-toc":"^1.2.0"},"gitHead":"fa2616c928be9702d02f259d5271359dd805d064","_id":"ppspider@2.1.10-preview.1559713782910","_npmVersion":"5.10.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-Lt49dqoiOCHAECiFSmhevGZbm4/kiqvB9Fwh8EqQZ/PtlAzCnxWfti5PAAJe7n/7wjPvyo8okaQ5neEsYxb6Wg==","shasum":"0a25703a1db943a3c7c1dabcd44115f28a183ef5","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-2.1.10-preview.1559713782910.tgz","fileCount":201,"unpackedSize":3663894,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc91i6CRA9TVsSAnZWagAAMLYP/3WKLZxWUcqjfmV9FFrw\n2bDs3uIe3JewqspqGX+sVsAvgq80p0kPrzRLjRQ2R+MdYvv3BlxGxAiQGZPj\nEsGnMlqqor5Y/52jJbajARtpFlIhcgf8ud2K/wprGIzQRjgz77bHOa42g1mv\niynzEt8Scow57ZimKJ+VSZuv4d7fc3m+MJXumfYdzTeoxkq6DpfE2OrvzO9L\nqlE6lN7w8Xb57UoMmlOPb06tQm4xXTSawqsPcCd/kVJ6kvq91D6CckPr/4H8\nU9H9fkBDfUhsxz1DsQjjQNhlG/DodHn5CPwUrMh3kzn7Wjccj8JmzG9niI3j\nprwlQMxO94YzD0s8ti1gzfGVEOD9NekiGuD7dp2T05+fyfpUV+FMNGnh0e2X\n9qfxIR056P7wTzDyDt0D7AwTavqedaWEMgxdzBHc0cNpSW2Q8F3PBM6RJ4vm\nwLFqt0iecWhMJwe1rY05Swc5oxn8ttjTqCmYyWjVF10+9V21GgmYHREPIuLv\nutwgg/7y00tPIh6UJQ0qPLWktKF3BY6sRGI0DslbwPBSacMcO5r+Sc0MJmik\n8K4stCz4atCpIplV2anjoRPNTU10CmAHQ7/hSOub/0th6q8XXI5MrMXnmrqr\nXqq/r7K8zRlp9E7aNrlKWo1w73P80r5PxTJCHtSrM+ELmQU1FQHZJIycEgOK\nw7sR\r\n=2/MW\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCYd5JyYcjFOnzxuRptlSsf6Nz1554K/aVZ4ROlYxoipAIhAMkN+Ia8+e91CDPuXgu70R7RK54pzb8bJMqfNPSBK8lr"}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_2.1.10-preview.1559713782910_1559713977034_0.5553632538684694"},"_hasShrinkwrap":false},"2.1.10-preview.1559739580863":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"2.1.10-preview.1559739580863","description":"web spider build with puppeteer, include task queue manager and dispatcher","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.en.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT","dependencies":{"express":"^4.16.4","cron":"^1.7.1","nedb":"^1.8.0","mongodb":"^3.2.5","puppeteer":"1.17.0","request":"^2.88.0","http-proxy-agent":"^2.1.0","https-proxy-agent":"^2.2.1","socket.io":"^2.2.0","source-map-support":"^0.5.11","typescript":"^3.3.3","moment":"^2.24.0","ansi-colors":"^3.2.4"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/cron":"^1.7.0","@types/nedb":"^1.8.5","@types/mongodb":"^3.1.27","@types/node":"^11.9.4","@types/puppeteer":"^1.12.4","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","markdown-toc":"^1.2.0"},"gitHead":"f09207ccbb454b4b4f1cb582bc971a1052b5eacd","_id":"ppspider@2.1.10-preview.1559739580863","_npmVersion":"5.6.0","_nodeVersion":"10.1.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-zW2fXXPr8f/LKvbgl/ARcQSmpePJvSnAuAduVxB/O5EZsZeUfRsmvABlnFkECqJLsZofuOdoLk4tYhvh4RnuIg==","shasum":"fedbf26d0598e10ed90eddb020d8ad366cc33c01","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-2.1.10-preview.1559739580863.tgz","fileCount":198,"unpackedSize":3647004,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc97zuCRA9TVsSAnZWagAAMsQQAKIryvyXoC0TrDL3iehH\n7O9Rg4PhOG2wyVJqqSxIt6niaK8RotBtqqGBuYPCBqVAOWBmzxHeYQUv3NZI\nx1yY/Q16pagV0G7mynVVycyYkoVuzaydSuRT11H4qvGkd1apdsK6BZYZtaJv\nyKtmphLXkn2nEXCrh6PHRZ3+VO/bEzAPCcSWx0svTlJNoEOj1TGTJMuBaUyM\nCCwUvaKCFzvu2iaYhXxvhMw4iKzI4V+mIOK3frO9UgmbWIClDnmS1CsM6Ot2\nZIdDBT67s0Ark+PZKtAUtdJZbpy+uRpHDbgUQlAOXWtW/2TS8xpEkjRaKaAK\n4hyb8IHIms5SgeBUfZVKDIPlPE/3XnpXijt5Kfa18P2zXZ/X/z/ZAwqr9er+\nX6VulVWHbrXxwtoahIxzCAxkM9ynDsWHGA5U/nXAv2GefT1dT0qWGjEVI6BV\n2zrSIEzro7fsYmO9DRVy29Qpz6wMdJ47P0arJbWGgbXlEYtXrX6pCN5CZqyb\nkwzJvlLJh3Taa5aPA+68qIJPx7b8CqQ1QTYknV201VE3LkRPlkQ9eWIeA6Qs\nKoAKqa/V8stVe1BVNvuQxei5mufwOXX09VVE1YC4kKEF8/bAlp+Och9Y807E\nJf0TKEXwyQ/u9b/x8f+naGKcSXNaMIydR1giR/9uPPptFBGVPUh8JyYe4/gH\nizv5\r\n=CiSS\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCUNz1rjh+yH/UzJ6NCdcSaoKhfFIxpLLrLdlj8B+FaNgIgHbMGbWD3QeKtaCskt2f6R7LUgV+mfAfx6USBOhCm3V4="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_2.1.10-preview.1559739580863_1559739629235_0.6728288657137289"},"_hasShrinkwrap":false},"2.1.10":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"2.1.10","description":"web spider build with puppeteer, include task queue manager and dispatcher","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.en.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT","dependencies":{"express":"^4.16.4","cron":"^1.7.1","nedb":"^1.8.0","mongodb":"^3.2.5","puppeteer":"1.17.0","request":"^2.88.0","http-proxy-agent":"^2.1.0","https-proxy-agent":"^2.2.1","socket.io":"^2.2.0","source-map-support":"^0.5.11","typescript":"^3.3.3","moment":"^2.24.0","ansi-colors":"^3.2.4"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/cron":"^1.7.0","@types/nedb":"^1.8.5","@types/mongodb":"^3.1.27","@types/node":"^11.9.4","@types/puppeteer":"^1.12.4","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","markdown-toc":"^1.2.0"},"gitHead":"00cf5f4746e721106b5d3febca42254e50ceca15","_id":"ppspider@2.1.10","_npmVersion":"5.10.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-nWu1wBe9f5wRm8GPUQjzWqxCU8RvU6oNDB5LiG6IqW9QRSlE5dzOE4ylWlr8O7el3psuSjUMZ22H6BR0N8Gp8w==","shasum":"d6588078e2d6652d55c7749c2dedfbbbefbbe3a3","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-2.1.10.tgz","fileCount":201,"unpackedSize":3672298,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc+NF4CRA9TVsSAnZWagAA5foP/RS7MHajxX5VvZHm8/KV\nfgzvx1qUeBMNyuj/2PdVymUpNO+VYDEPlLqE2m0PZuy9p282nemcW4bWBF/i\n6NISslQXnax1UABEjtx9gCAaNwtujuQ5eY0el5cJAark6sSCht69TKusancU\nbZkMJ032+6tCXj31fYtfAEA2IOG62FSqXg+PZKEAehbfMeJl9DW1i7V+NPC5\nzd6Ec2AVkgdWt4JOTQjNLJw9vdh/08BsyfhF3Spg63i5HFDzN+/2bY3SERQa\nYboOjWAb+JdQX3d5T5TyXDO4TF/SWQBwSBzYalqKvfLJ9prYOx0laOQ7gM9a\nEBuuxam63ztLRzsPqxw3wb9pTRtmMrA8ZjJv0Pd/CFyxpxOoTkhRuAF4wdPH\nhKcMhq2tvRJpmqMnbxi/jaqeZEVlW2LZIG0hf/qmYKF5m+TDbN4WDkdK15Bz\nDeuufTl+QmKQEC2KBmCrzPbdD36ccm/0uAPO76xPcMss3vc8UfueECVjmfyu\n8LuwojZLUcxpY7dtwg7Fc45JKXR+41x6i7jbcBeokR1PPr+GdC7iLSGMBjsj\nCvez5SGuO1yP6JJF4XLOA00nD5UNa8jvhlWaTNMCPs4e0ZD5t2/Hsk3NANKa\nVY0qLxy1tPXyJw/bUGhrXIW1p6Qs9kNAXZUaCVbV81khbNqKM5Y8p0bRTZ39\n5xM5\r\n=OoMr\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB6rRyZhQI5y2I7N2WssuxqoqEyodP+ypfk0HFcQL648AiAxdWCSmoaUoSeA2G5L2jWlw8cIMuaLCYX8ES1gIFP85A=="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_2.1.10_1559810423379_0.5966645274821465"},"_hasShrinkwrap":false},"2.1.11-preview.1560242908801":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"2.1.11-preview.1560242908801","description":"web spider build with puppeteer, include task queue manager and dispatcher","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.en.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT","dependencies":{"express":"^4.16.4","cron":"^1.7.1","nedb":"^1.8.0","mongodb":"^3.2.5","puppeteer":"1.17.0","request":"^2.88.0","http-proxy-agent":"^2.1.0","https-proxy-agent":"^2.2.1","socket.io":"^2.2.0","source-map-support":"^0.5.11","typescript":"^3.3.3","moment":"^2.24.0","ansi-colors":"^3.2.4"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/cron":"^1.7.0","@types/nedb":"^1.8.5","@types/mongodb":"^3.1.27","@types/node":"^11.9.4","@types/puppeteer":"^1.12.4","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","markdown-toc":"^1.2.0"},"gitHead":"646bef29619aadf699c96d7e5dcff177104c9212","_id":"ppspider@2.1.11-preview.1560242908801","_npmVersion":"5.10.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-u8YLSHbesIwkmb/wpBKSeVJw7NBeIO1xewQqwql1H6c00jtP+lAOBOs89MURGTOD8vXCUyZ56JX3Z6u9KsafcA==","shasum":"f89d162dd9993c0ec3d9a738ee35e8d88beff145","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-2.1.11-preview.1560242908801.tgz","fileCount":206,"unpackedSize":4321712,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc/25GCRA9TVsSAnZWagAAF/QP/AqTWfnfHiItJiv5gHyO\nWgBmRdIjQG0q7S+1JjfzyN+ImIsMTc/ZqQ1YHXYH56peXcOv7wKOZhJe1UWr\nYJwFnsk5rlx4MvFbWulCKbsqM4ny3dOp8CjU9J5oViEAyZi4ucJwyp/onS0x\nP/c48X++Sn8X6h7C2qYSzuLM5JNg5YOwZZDQBJbtvfsHRKSmZM742Kt3POBX\nbROpETC9dyNXW6ZyQSCc2nqdgJaMOVsyvMLYmGBrq9IsWCgRvOO16f/I+wcZ\n4nt10XuiiWxCZz2j8dp1RxABO2qrjZLRKPM6FwQIsna1k1Z943IN+Yn18CGG\nPwt6mnY4nLCBtTYCM5Nt/qZhTyYHNcEx0cSMhxgRdPBvTkZxD3GuM/7gA762\nY7Vl+HYtl9Qupiq8ipx0ZDVHJjj9zJkeMNYloDj4p+BUaocqIpMZ3ffAFvFu\nVUEaewjHJivtJi99UD3nMoHHVH+1T6nRwCV1ObopxdWR2ttPH3JiHffpka6f\npr5GNozYTURm3j/Jt4mu9xcty5JQJ4gJa3e2DVd7G6T5c0+IIeYpM/6kvLbW\n2oMvHwqwbC3I0IBgPE/WCTGF4Z5sKaWHm8fXnBL/llxBI7Rm5r0MWfmu27Da\n2EwMqBblv//DmuhwQaOxrAONZVYgKBT5srbeUyuaHlIMOh9+uYxuS1txqK0h\nEuoi\r\n=k86i\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDDcdx0ugYuNXKUxf/VCqx0iHIxTVsz3K8auy0pEXy7QwIgJRjx95SoHqSp0QUTRwiCcuiuZi0Q5D+T0xv3yN9ggEI="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_2.1.11-preview.1560242908801_1560243781293_0.21575922747693954"},"_hasShrinkwrap":false},"2.1.11":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"2.1.11","description":"web spider build with puppeteer, include task queue manager and dispatcher","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.en.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT","dependencies":{"express":"^4.16.4","cron":"^1.7.1","nedb":"^1.8.0","mongodb":"^3.2.5","puppeteer":"1.17.0","request":"^2.88.0","http-proxy-agent":"^2.1.0","https-proxy-agent":"^2.2.1","socket.io":"^2.2.0","source-map-support":"^0.5.11","typescript":"^3.3.3","moment":"^2.24.0","ansi-colors":"^3.2.4"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/cron":"^1.7.0","@types/nedb":"^1.8.5","@types/mongodb":"^3.1.27","@types/node":"^11.9.4","@types/puppeteer":"^1.12.4","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","markdown-toc":"^1.2.0"},"gitHead":"58331fe9a9f4a0fcb91523aa694c6bc33712085f","_id":"ppspider@2.1.11","_npmVersion":"5.10.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-+tEczxIzgioMjTlxn1vgW88Nil4EMt/FpkXvE2Ot4ZCFliN/TMvKmNGMQzlGYQRIX0Xd0XYJe38cXBtUQ5NyPg==","shasum":"872c8a3d3d09f27b5c1cba4e4b4b4fa44b312808","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-2.1.11.tgz","fileCount":206,"unpackedSize":4322779,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdAgoOCRA9TVsSAnZWagAABg8QAJzMw/SrVu0WwNN8Le+2\nMlFAxK6MM5vUFQZhQoJ3bMqbhwTpJqEv7rvNc5dP2FV989XLSuqAgQFyp7B1\nxFwQmPqeRSUCVNEZKcw4B5wujUQ27kpaGeWCftQkEdeUrVsEZPugz2nfCltG\njN8E7zxjOeueO49PHalEaSLrWjPTz4ltSFzL9TaGMRDy2i1vhfytALvZsHgl\nTY4g+uqjXsNA0z4FQytD0EmINP/M+UUCCluzwkqI870M4qxZpSMhPJIC3DW3\nF5FMsrLyUp1bgSAjSLLWxGBfebwwjYylYQh/UycCNWLdSTtB6caF4PjwoeMp\nN1jq+1tE1onm6eHf6llxEOQqjASG49oBBPczMbUJTwaKumJ7i7//e2j0nd8A\nl6eU+8uzc8GQ90LTEFZJCyACzvpTFM7Kc5nDFlxrOYui0rju+ekIlOqLEmHx\nNhLCTuXLiSm+S57yn2n3edzKZQ7ibCnqvOZ323SP5wEtWIUHIpq6lxYE3ccN\nW/Ovq2wTzvP4AsWnyfTTrURLdKMiR/L2rgDJB32iFRu0RlFF/4bHnmlRBlcL\nNzcyHkuuLCOC3Sh9hGnwsv+EK8+qmzZTzl26WrziRFJCfMxXGKaIpnALPtnQ\n5jFyQobRu69pQ5wne8vMO/iXF+4OmG1vIvvDHKQq85OIOfXRQHr2Lfh5MCsG\nbe97\r\n=zW+V\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD69mLeUqSaPfOgRmTFa64QMgSaQ0XR8Dp8nFBM6d6JqgIhAOJXbtLjsM8/ClOe5rHdEbw2wUu1b0fhwnYxNe4yaFMT"}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_2.1.11_1560414733001_0.3019399033908279"},"_hasShrinkwrap":false},"2.2.0-preview.1561029307267":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"2.2.0-preview.1561029307267","description":"web spider, support puppeteer, cheerio and so on, include task-queue and dispatcher","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.en.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","cheerio","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT","dependencies":{"express":"^4.16.4","cron":"^1.7.1","nedb":"^1.8.0","mongodb":"^3.2.5","puppeteer":"1.17.0","request":"^2.88.0","http-proxy-agent":"^2.1.0","https-proxy-agent":"^2.2.1","socket.io":"^2.2.0","source-map-support":"^0.5.11","typescript":"^3.3.3","reflect-metadata":"^0.1.13","moment":"^2.24.0","ansi-colors":"^3.2.4"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/cron":"^1.7.0","@types/nedb":"^1.8.5","@types/mongodb":"^3.1.27","@types/node":"^11.9.4","@types/puppeteer":"^1.12.4","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","markdown-toc":"^1.2.0"},"gitHead":"1e15f1449ea7f45bd82167490b6ec3bb9dbe2527","_id":"ppspider@2.2.0-preview.1561029307267","_npmVersion":"5.10.0","_nodeVersion":"10.2.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-KhNZgvRTJyLIfRuvvmRloAU7pyCB3nLn+4t3u+kPuCJf9fZrvZ35p4Y0ztv+HTDecqEJ6WlanuoY8jomvC/c0g==","shasum":"9db0141bd10c528200a785bb8a5d58d98bc342fd","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-2.2.0-preview.1561029307267.tgz","fileCount":206,"unpackedSize":4343868,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdC3+bCRA9TVsSAnZWagAAIzEP/2U+1gjNaxTEJ9+QegGh\n6QmpAK6cJO924QJh4Z2Eg9OboP3qTfE4nLrn2hkJAamz7+NG6ZrRqfha4o59\ngS7GEg6LqUyvHpdbxYvGNMnM2IAx+0ZZpIKwm62NiC7mK2h3c2JLqH8p+nOU\nD2lplhxFoV1osjtYc1GoDeVk7N2qWRLSdJqMcrSQrq2Sa67VldrtcTjJXwW3\n/UzUZSoNP3hZtyEwzQuSe8HgKRP0sVaKTgsdf56DEK1c4taHVMGhMXnNy0KG\ndkWuV4mnxespYkIpYnc7/OFDqNdkc9WVbY4g2iYxBdS6wbO/TLYxU1b+FYOz\n03gvcBsuE2AsCpXuxzXdmPPfwJ/2iN1wu+6wWyT3xUz+EDi7p2VUlIGmAssP\nIDrLqHoXZbuA45DvWAK+nQ1ooqKt2e9U5tFeoeO/5iDhF5sYyNGI9vcAy2la\nw3q7D8G/ynLK3/2q05cc4qjcHmbNMOhjopoVSRmzSWkhYf3QLXSXje/Iuwch\n2pAT7jW96FaiooYAWsl2VE3Trp0dgieLDiH3W2lU3I9SM3MmTOIL4PE8kYpn\n7QfEIlGHok9BhIP7J2cSmG94f+wdv7pTVFIvzSoMKZxzretnys/bqkK23m5F\nRhvetliojU5XwgJSMYmSOuwiTNYxwn/IuNvqzT3CjpJYRo0HzR3fFxxcAYPt\nUjCS\r\n=+Wk1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDgjdoKMZeYGe5jgEkVV+iHsl5UU1QORwYhF9BURtyrFAiEAldx48j8i2gjuqbmSBSPFZnPD/ZgjSMvSa4PAzbaxwjg="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_2.2.0-preview.1561029307267_1561034650019_0.6673063829370358"},"_hasShrinkwrap":false},"2.2.1":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"2.2.1","description":"web spider, support puppeteer, cheerio and so on, include task-queue and dispatcher","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.en.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","cheerio","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT","dependencies":{"express":"^4.16.4","cron":"^1.7.1","nedb":"^1.8.0","mongodb":"^3.2.5","puppeteer":"1.17.0","request":"^2.88.0","http-proxy-agent":"^2.1.0","https-proxy-agent":"^2.2.1","socket.io":"^2.2.0","source-map-support":"^0.5.11","typescript":"^3.3.3","reflect-metadata":"^0.1.13","moment":"^2.24.0","ansi-colors":"^3.2.4"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/cron":"^1.7.0","@types/nedb":"^1.8.5","@types/mongodb":"^3.1.27","@types/node":"^11.9.4","@types/puppeteer":"^1.12.4","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","markdown-toc":"^1.2.0"},"gitHead":"d2d9effe33b6130307a225a4bab3b197b554c6f0","_id":"ppspider@2.2.1","_npmVersion":"5.6.0","_nodeVersion":"10.1.0","_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"dist":{"integrity":"sha512-PxOXS6m1+NRG3cnSsibbhBMyGoV3vU4LWabk52gWJyVl9SFcRHUXghUv/xYLnmZU5zWl3X9TDrRsYgWnrCFvCg==","shasum":"a027beccc69977bbf2996c92edda68e5a0d91bd8","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-2.2.1.tgz","fileCount":199,"unpackedSize":4161667,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdDZZyCRA9TVsSAnZWagAAnBwP/17wKA5RjCMqnmdxCEWX\nAzflFfvtyj9A4Z8NpLuF8+oAw5q2BuFWPsYLRc1uGO+qHvD0Pq2wCUXdYbNM\nW61nVZ825BNzAWNjYjpoyHfT3sIcSXKvz+t20ob4DZCRM5EEY9kTPTWofkXt\nAXjYwgUfRR9FxjV0OL4a++Xg8PFJdEYaymDq8UE0BPiOg3Xh5KBAWXeIl5FD\nGp6WN+Koyspre3sIzLkGXD8tHl3VfWNgQ48i9RL0lKHHu4rsZXTcDTzAiZ8u\nUP4tDVkT0S4+ETI2NSLQrYjpUnzB16nisQvy/Tte5X+/gGQdZffoSXzn0Nio\neruxbbtyYy9IVRnIXvrgNa9NxsM53qkVZ8HU2JlC0H5fkUwBqaNA4ar97m7v\nsBOoUa8dKcKhcJc0RS+2ZQiRXsZHGT543Lz8WUmRcchpbTxscAmyehrUVcG5\nwu+ZQoLtuRHguYMnp4TdQ9FwJcA5sB+OCnLbEzynzPp3Br42fSpPIEQ9n+5u\n4BnTb6lMMDyrSTTVEDyndr7xSlqYfkWqumSJSrWLmpcmfK7Q3G6aeuUOVwIe\nuHOh8nVYWxec8pHameCMknttw9z8fq34/YL22PZG12ONQ912enqCgf6euO2L\nFH8xvjnwnEABhNhx8bRo9JRGlllMnmJdJo5yYrXI5O3bRi1K56r0aQG6nRR+\nEAIA\r\n=cAzK\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDFyrh0WFJY6EmWdm8JKyYe2pkqHupIpHylOl9ceVM12AiBEkIK8o9UiH15AJB/vu2fDo+P4Xtl9RtCuORMeJJlQiA=="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_2.2.1_1561171568651_0.297152216014932"},"_hasShrinkwrap":false},"2.2.2-preview.1562823732385":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"2.2.2-preview.1562823732385","description":"web spider, support puppeteer, cheerio and so on, include task-queue and dispatcher","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.en.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","cheerio","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT","dependencies":{"express":"^4.16.4","cron":"^1.7.1","nedb":"^1.8.0","mongodb":"^3.2.5","puppeteer":"1.17.0","request":"^2.88.0","http-proxy-agent":"^2.1.0","https-proxy-agent":"^2.2.1","socket.io":"^2.2.0","source-map-support":"^0.5.11","typescript":"^3.3.3","reflect-metadata":"^0.1.13","moment":"^2.24.0","ansi-colors":"^3.2.4"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/cron":"^1.7.0","@types/nedb":"^1.8.5","@types/mongodb":"^3.1.27","@types/node":"^11.9.4","@types/puppeteer":"^1.12.4","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","markdown-toc":"^1.2.0"},"gitHead":"d31ddb644f028439da9697fffcc9ee9f91621410","_id":"ppspider@2.2.2-preview.1562823732385","_nodeVersion":"10.16.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-xaQD74852YTM2BnKHdTEfALydMmm9AbJsa07HarCHNTbd+k7woI2WQpiIwn5dMV3peHlG7RZibw32AH//h+15A==","shasum":"fe1ab58e252eea56693b51daf854da33a1bdd5f7","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-2.2.2-preview.1562823732385.tgz","fileCount":210,"unpackedSize":4363935,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdJtGbCRA9TVsSAnZWagAADQ8QAJbC05BG6Gwuj+WIhNn6\nxfNKJgz1BHwv1jmu5E/XOeVkmPLZ1aUlLkZMyii28UbElZByJtsSl3b/CsFc\nC4xfTGsWJ5SBR/TSu39hKr6RmFOO0VHRMK3SYb0tod+Wnrhn6rzL2yM8aS2q\ngpyZhk0cA82eCgW1cZ60IywdtpwN3C6Xzr5rLm839P6YJ83392lwTEtBxSzL\nWRJajP078qjrHWHIeRTza4u1EBR4fpnIqeLeKE7aUY7Sx6Vt7JbsaaddgblH\nIFEKAzl59PP7sLol2ELSBXNw0714W72fAmA3wMk2Qs6lGg61q9Ch/vk3FH6Z\nWI9DUFdop4bDbMo3lvEaQxTh89eciW9t0Qf4gjqePueN/0nBAzb1ocExcscu\nhWFbQFqfABLMTCjun6KJ9wgeFVt5i/y3yuF8wgLN0zGFRanSZNZpFx4oCE6x\nlex7km70bYBKwOVUpZqM0JloCkVGMl46wezbyE2z8JA2GSXLQutrv4lQ9QGJ\nxuVaxzX23DK6Iw5xSlQ03SgUpE5W1BcXPurZWdhdvIi7cwoQGiwbg0DKY4dx\nXkgJMvOWp+PJMwe30i5Ehlpjo/m+5AvGceFTJPtV9UFR4v1uggvW1pP0PwRB\nL26IxqtSQrSoTt62QMnruMHSNoofVdKzBTANqfthyV7Hd5dlmfeF719DaQKm\ngFPh\r\n=0F+i\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC8gsmZZLqTANQZNLEfsc273vZmUlnHr+CziJaP6MMpkgIgHpfCYXXnVzHIjquX5bQuwQmE8LCxttFNBrnOjqHtuck="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_2.2.2-preview.1562823732385_1562825114104_0.2905238009337978"},"_hasShrinkwrap":false},"2.2.2-preview.1562925511745":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"2.2.2-preview.1562925511745","description":"web spider, support puppeteer, cheerio and so on, include task-queue and dispatcher","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.en.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","cheerio","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT","dependencies":{"express":"^4.16.4","cron":"^1.7.1","nedb":"^1.8.0","mongodb":"^3.2.5","puppeteer":"1.17.0","request":"^2.88.0","http-proxy-agent":"^2.1.0","https-proxy-agent":"^2.2.1","socket.io":"^2.2.0","source-map-support":"^0.5.11","typescript":"^3.3.3","reflect-metadata":"^0.1.13","moment":"^2.24.0","ansi-colors":"^3.2.4"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/cron":"^1.7.0","@types/nedb":"^1.8.5","@types/mongodb":"^3.1.27","@types/node":"^11.9.4","@types/puppeteer":"^1.12.4","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","markdown-toc":"^1.2.0"},"gitHead":"7fefae6bc2248cacf810f8f6e870e96d8f252399","_id":"ppspider@2.2.2-preview.1562925511745","_nodeVersion":"10.16.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-6FpT16exKFMVkTCJbYBJ4+cPUJlbrjjpm/oXngOqk/pGTAWKwxTCdbQcyz6YDq7XaVZzEj0WAdKCPF7a9MTyTg==","shasum":"937ac702ebd1d94b3b2dc6bfafbfe822eb568a57","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-2.2.2-preview.1562925511745.tgz","fileCount":213,"unpackedSize":4369848,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdKFohCRA9TVsSAnZWagAAegkQAJ/pPNMEk3arZGobYUvb\nTS4vGhETdZP/JcA1G4XyfK2Plokf7Mp1yLr4Owq0svGwVXj7cZUlUoB4SgAV\nUvCET+b64EeyoSQxorjw7na33bPGgwfVyPHHfEIGyPraOPj21bmydTXePQyw\nWKOPKEHs9mhdpMHgc09vFK8yD8T9y5qF+JqXT4JFKNkqtQZC4udHB8UPEduW\nBUUG/rsM/r/CyRDprZyl9u/RHMO1Or6xLgxbsyUN71vqoiqpVPjjCLe8p4d6\nRWyNks9xuI2gM5uxqCJA1i0CfFoiFUhfuQbYsiu7KjYkNClAfMnc35tCLW4q\n/Mbu40gZ5wmxZWxtEqUUvwWlHK7itw+aoyCVxtz1KTnlYfI+ZbSi4PvmR7eF\nFTu1uVwCFxco8gNQhb4euMjLddYf3uolMVtOoFibP3SOpR7CRHO+InNR+yS4\n6QJJxe9+rnDsftROciFjGGsaqwT9WVaoL7EwlO/0OUGagmm2AG9sRggnhRq6\nxSfJXuH8Bq6Ko3cmrGt5FHvTbhqszKofbJkZPJR55Dgkh5od9JP6l1OJHLLs\nPg/mdmHl/agG6Dv0tSrIDZPmYFkx6eLIdOV13KX2t/L/Zu0MP1SaThFdI7Js\nNlIb3MPn3tCunQPP2cf8sIiOoBzzHcDTmLIl9pq/A12uGSFxp9T/fisGxsIC\n+m2Z\r\n=wrRO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGs3VByqiUWRgLiQUEyIlnPisjgg4rFywd673zsnB+OvAiEA1jZ8CLOOKwCqlc/7BpwoH6BcuV2Ajr1s9Oorg2J9X8Q="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_2.2.2-preview.1562925511745_1562925600274_0.611259059465953"},"_hasShrinkwrap":false},"2.2.2-preview.1564463764729":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"2.2.2-preview.1564463764729","description":"web spider, support puppeteer, cheerio and so on, include task-queue and dispatcher","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.en.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","cheerio","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT","dependencies":{"express":"^4.16.4","cron":"^1.7.1","nedb":"^1.8.0","mongodb":"^3.2.5","puppeteer":"1.17.0","request":"^2.88.0","http-proxy-agent":"^2.1.0","https-proxy-agent":"^2.2.1","socket.io":"^2.2.0","source-map-support":"^0.5.11","typescript":"^3.3.3","reflect-metadata":"^0.1.13","moment":"^2.24.0","ansi-colors":"^3.2.4"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/cron":"^1.7.0","@types/nedb":"^1.8.5","@types/mongodb":"^3.1.27","@types/node":"^11.9.4","@types/puppeteer":"^1.12.4","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","markdown-toc":"^1.2.0"},"gitHead":"ecd5d06d44026d077d8de1536eb70f5470afe933","_id":"ppspider@2.2.2-preview.1564463764729","_nodeVersion":"10.16.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-fIsQZNVFD2avEruTcTwDJ4DWJyGPJeQhRCJ8gv2HxEz/eBvQ+mnTHv1a3FUbxgYk1blV+wQDsokIi2cQQSxpyA==","shasum":"c44fa0b340409a8180e163e2a0b10ae40fb59546","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-2.2.2-preview.1564463764729.tgz","fileCount":217,"unpackedSize":5101061,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdP9l/CRA9TVsSAnZWagAAJEQP/2R30XIEVBOYutSeazq4\nuLsMobav9BtHsCKqoE/W7dBT5tv20mZ1/F4UXNZADUfIkgqdPne5Am27G674\nVRn9rtuYJhRMohLbSaXIfNapSQhrmIgFvrczjNQIDBkLsdcR/xagzX+i2+bt\nSGfok3MR95qxOc0aCymyr2ox3leVVedP8hHLEkC+8W2bCtnJX8RXjpsqNZay\nBN4K/20oEfAjrI+a5uqbZuoFJgepBjO7bGmlM36Rav8HWyrj8WdBHJq6VV6+\nYNP6jDmWfumHhp8YvszPRb8LMwr5CXwD5z0umjRuoP/ecGKeRGdiCrowCuqK\ni4z1HaWj2yvUsE711Jkfv16hWi9aR8E/vNi8rNnABLCySbfgCjpDX4pUB1TY\n6uChB2Bl7n+J/LROKUN2m439pnV+IjGBkjRE6c+oE5PUDG1f0RqY3yG1+KiM\nxJdd6gPYtQAb8Dd7J0Z+VbBbn8c1KkeKw3rrsyipFawkMCnuNBae3A/9thZp\ns5zZVLcDnpR6T93mXxIm64QaZ1KXSr4wiB3eEycG9eF+chzFbOljwnOF+5LX\nO7sNcr6o3B2JDouQSWyRWZSkhwLBigIRTa8OGuIA5Y+XxsC0t92SP/0BHpsE\nZ9vh2mXJy8FG4jORwWX10JKSFl9m93Ho+SnqqfT+Z+TpmNr3Wjq8zQfi+UW5\nwiiH\r\n=iVwl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCtGY0IqG0q4sy5jW2/PXIv4FYmQM0CzpAYnXzSzvHhcAIgY36nW1LqGqY8DSX47rA5HE3KKhqwUXatMYoDiPMjYZw="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_2.2.2-preview.1564463764729_1564465534105_0.5194108205554331"},"_hasShrinkwrap":false},"2.2.2-preview.1564551925339":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"2.2.2-preview.1564551925339","description":"web spider, support puppeteer, cheerio and so on, include task-queue and dispatcher","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.en.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","cheerio","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT","dependencies":{"express":"^4.16.4","cron":"^1.7.1","nedb":"^1.8.0","mongodb":"^3.2.5","puppeteer":"1.17.0","request":"^2.88.0","http-proxy-agent":"^2.1.0","https-proxy-agent":"^2.2.1","socket.io":"^2.2.0","source-map-support":"^0.5.11","typescript":"^3.3.3","reflect-metadata":"^0.1.13","moment":"^2.24.0","ansi-colors":"^3.2.4"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/cron":"^1.7.0","@types/nedb":"^1.8.5","@types/mongodb":"^3.1.27","@types/node":"^11.9.4","@types/puppeteer":"^1.12.4","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","markdown-toc":"^1.2.0"},"gitHead":"3dc9aa44c48aca87e1fc7f198b120010246a4f72","_id":"ppspider@2.2.2-preview.1564551925339","_nodeVersion":"10.16.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-1m5gvht5uxmNw5qQHN1uMV0XtLAU7/7gl+QMY8Yy7+7Xitntrm6XJHMeGKhBNkZh57CFI5oqbMlVJVMgOKNs4g==","shasum":"6ea55dfd76d10ec603b667b241cad9414d877d0f","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-2.2.2-preview.1564551925339.tgz","fileCount":217,"unpackedSize":5124501,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdQSwsCRA9TVsSAnZWagAASRYQAILTNsg8fuWk2aC8wUHa\narbqkiDiK41Lmn/pWPK8xRGz5upjPrp6mSgMO6CpwSDMZ+o+WnYBdEmLzlK7\nIwfx56S4gv5x0yVnp7n05MqkKW52RWt2quK6P37mNO9yZaqy1LepcjlCUnWB\n3q2e/L48T9yKCzJ7Peb6O7ctRpRFJ7pAR793stXxOeRC0jcyJazEbz0cW2ao\nL2pgSBT2Mq1OzyBjSc7orsWJyLMuSRu9Vbrwc9kBOuT0lAwHRTKUK9AjyvF2\nJyiKknHAYrpOroLWLEbQC6373jb6WD9oZeHnVYDJCHYiBam+waU//9RMl022\nkW7SUkMFtLlE7agRRz6oJEIUZ5+hxaiU+cjp5vGZEnA4QGrGPmR4gJijuPrp\nX3StGFLRfZPuQvbNzdP14duTlddW4iWc2DtG9q0mgJq9FOg/1+E+B/M7I8LA\n3O7sD00aFt2XgbwCoFbyqcN8cNVJCXiMmwxT6o+CUmR8ta5gnnXSt1Em06xn\nn6T4AYGRzxp0kAxAc9Eh3I00JcP+YgBNkLzBXTMQpUOh21oSDJFZH+Hj+AX7\n3D9S/lOQjKLGfNHl3obRk3IZcBoar1LtMIBY2b8fEOyQ02JhM1jXH0M25NXM\nUIGMjLZDIqqBteVDPG+FbxUjrkqj8xtQOxRBFmSImq2Pko3/loZaa9Fs9f8s\nz7zQ\r\n=g/nM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAaDNehCtfL0JqofLLK6hGxVhpwlgC/qchQxvSKjxpGqAiAPRr7LCfKvyllCiSqQLmEgqHu6ezLTXWl8oIM0tVVjyw=="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_2.2.2-preview.1564551925339_1564552235818_0.12122994007846444"},"_hasShrinkwrap":false},"2.2.2-preview.1565077196541":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"2.2.2-preview.1565077196541","description":"web spider, support puppeteer, cheerio and so on, include task-queue and dispatcher","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.en.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","cheerio","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT","dependencies":{"express":"^4.16.4","cron":"^1.7.1","nedb":"^1.8.0","mongodb":"^3.2.5","puppeteer":"1.17.0","request":"^2.88.0","http-proxy-agent":"^2.1.0","https-proxy-agent":"^2.2.1","socket.io":"^2.2.0","source-map-support":"^0.5.11","typescript":"^3.3.3","reflect-metadata":"^0.1.13","moment":"^2.24.0","ansi-colors":"^3.2.4"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/cron":"^1.7.0","@types/nedb":"^1.8.5","@types/mongodb":"^3.1.27","@types/node":"^11.9.4","@types/puppeteer":"^1.12.4","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","markdown-toc":"^1.2.0"},"gitHead":"b2fdccfa943a9438791ce9d0c3602a59392bf8fa","_id":"ppspider@2.2.2-preview.1565077196541","_nodeVersion":"10.16.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-aCfaiG7dxhLFuFW019TaK15/M4sD/0k6VLh/KYE/50MOGvVhDY3Dk3ZfErK5oJBA5EMju3neAH/t21CJBBy4wQ==","shasum":"0c3c32c2159c7002fad7a3a8ed42f8fc26961a23","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-2.2.2-preview.1565077196541.tgz","fileCount":217,"unpackedSize":5157680,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdSTGnCRA9TVsSAnZWagAA8dUP/AvnWQI1uQ8cVUO5/LE+\n9zN13t7worcQUDXpkz6frbF/y4onG9d0maPQs5gD0al8CDqwYYGTgKGQ2Gue\ndoNt03c18P1duTyWZ34XYdYhU5Or0ABVYcbzPOOhQsy8x+KycGbb5Dr82a/X\nsTuZVWcB/YNjBbFZz91acgjIHBAK3H9rDcMfmVgLYN9XEAJ1WwKJgA7YscwG\nXaNtfQns3vHsn7f5BuwjdCrfvthVyo1+h0+pvRcKF49HvohX5eq39LXdZm27\nEtzj7BTLFjTmrub66AKWXWbVPw4+3Dq5eGhM/EnDaEQthD5FFCjpzxJ73AVe\nZQQVJrNyltCEuhFQIeir1wKn7AOS9L0hSwFDmWbPkwqCpTaYgbGbuVqCrmEq\nC1Td7MchedIMw2sp4dKlDOolYYg13/N1a1/7K0IIx1jx41Zxf+181nAwP7rW\n+yUAxKEQuXztMyHvOQeIQjen2ZsUKnTXrXcYq1mlCtZyts6nootWP9QfhmrK\nPV/orlJKiqlNjSaEXF/9mq2LjMc/dxwW1gbQ0Orfqt3NznkAqw2MmFpZdHOP\nyaiIaQ69fRS4VfiMMuSdK+bMnbbZGjLpeCtjxXDr7gZQobhcycxkQSUY+ETk\nkQ7U0J9qLUnxhai8d5FhCI1pRAx5ywnWfpnhhmPTR8M2L4Qnlxsmu1DtA+iT\nN1bz\r\n=WsTQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCA8SmFrvP2Ra9s+16H82wpDDfnRFauO0mhxtNIcs2OSQIgEHUT5YPWqZkAJhZPK/o5zh1uVy0erg5kqZv/eQj9Db8="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_2.2.2-preview.1565077196541_1565077926129_0.584034272486067"},"_hasShrinkwrap":false},"2.2.2-preview.1565240656871":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"2.2.2-preview.1565240656871","description":"web spider, support puppeteer, cheerio and so on, include task-queue and dispatcher","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.en.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","cheerio","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT","dependencies":{"express":"^4.16.4","cron":"^1.7.1","nedb":"^1.8.0","mongodb":"^3.2.5","puppeteer":"1.17.0","request":"^2.88.0","http-proxy-agent":"^2.1.0","https-proxy-agent":"^2.2.1","socket.io":"^2.2.0","source-map-support":"^0.5.11","typescript":"^3.3.3","reflect-metadata":"^0.1.13","moment":"^2.24.0","ansi-colors":"^3.2.4"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/cron":"^1.7.0","@types/nedb":"^1.8.5","@types/mongodb":"^3.1.27","@types/node":"^11.9.4","@types/puppeteer":"^1.12.4","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","markdown-toc":"^1.2.0"},"gitHead":"6f93f218c01448026e4437ecb077e8e904d60614","_id":"ppspider@2.2.2-preview.1565240656871","_nodeVersion":"10.16.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-m9fwoOQo2coxVAHdLynGL3F8HT531gP0K/U7HprMSjFd32oN6T3+abctNWblxhxwHZYMjLBVIduBTI6tjqzBog==","shasum":"0e5211731e60625102fc03d7e11ab06b2d9dba7a","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-2.2.2-preview.1565240656871.tgz","fileCount":221,"unpackedSize":5175326,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdS629CRA9TVsSAnZWagAAIYoP/2W0oKTfzHSoMlVhrItI\nLJpYm1Mr78YXIlpW7EeL6p+2O2Qqey0RJQrL3woA6MzG0OyhVzG5A1jiFuoB\nCcrkaBAcpSU3UmC/ZleyJEraeiISvqMEsuEUFfOnht6k62w80UWjEdIrcUNc\nPcWhluzVxBgtV+Dp1tx1ADbgHq6auYGGtQyVuE0yu7f+fjPL/f26dbDuyGWk\n6qMCPKXR2V9VemXpQK0pJzzjyvLJiebveFglGvdlKD95UBFgMb85nQtGisif\nTjjEV6W4aSrXWZOvGG0KuqsOv7oto5xE5FKrGf6W4DQnQ02AeObMecj0g4id\n+Q4a6e0exqnuVWULmTV4SVcxc6+4b7XpaJQoHNn2ZCynUeo7ddKiAii1KAq2\naWY5sz1p69mhVQnNPT2FDxRO00kyrScMG/mGKtDkyybs8T/jiDUMiaygkSKi\nacmEP+M45BT3b7bnPmyFkmMp6c7l1wJ9gAu3tLwpNJCLSnM2Q+1l3I4g0/qx\n/0/uDOV3N0o1vzdC6pj0DPZ8CVwQCgRm3RMOPe+/zcVlDStyZZD6UsJCvTCC\nDvSR8Ix8cFGnAp/w3IcJdKg/B+I2Mo2395n1zQePXaOlu78e3rDGtsk9fFr0\nIhWTdm4BDtkSIDv/4vxOKuBo8qRbKYI+Hoh/Oz29+mpbH4HjDXhy0wT7uCcV\nSXUb\r\n=6WzE\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDkqcrNw5A5zZgKD3ZqnZ/pIkwgJS9X4T1mKXiEMsDFmAiAYs3aPzbZEQx9Yx0OhanJt6yQinmOR4yIV7wT6+szRcg=="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_2.2.2-preview.1565240656871_1565240764948_0.7311916577057376"},"_hasShrinkwrap":false},"2.2.2":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"2.2.2","description":"web spider, support puppeteer, cheerio and so on, include task-queue and dispatcher","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.en.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","cheerio","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT","dependencies":{"express":"^4.16.4","cron":"^1.7.1","nedb":"^1.8.0","mongodb":"^3.2.5","puppeteer":"1.17.0","request":"^2.88.0","http-proxy-agent":"^2.1.0","https-proxy-agent":"^2.2.1","socket.io":"^2.2.0","source-map-support":"^0.5.11","typescript":"^3.3.3","reflect-metadata":"^0.1.13","moment":"^2.24.0","ansi-colors":"^3.2.4"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/cron":"^1.7.0","@types/nedb":"^1.8.5","@types/mongodb":"^3.1.27","@types/node":"^11.9.4","@types/puppeteer":"^1.12.4","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","markdown-toc":"^1.2.0"},"gitHead":"8aa12770d6a331b1c6db6ede92777757fe0bf188","_id":"ppspider@2.2.2","_nodeVersion":"10.16.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-JhLJ/XhKafCGlTaqZlg4a3VARCUUuvglnmfn6fq9/lvO/WXrvSYXDzJEuZQKLTC29Wv4XAkozfHFsr7zSJ4R4Q==","shasum":"d1fa8977910e6bf83b8cf754e73d5a122ae4c895","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-2.2.2.tgz","fileCount":225,"unpackedSize":5176491,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdXOyrCRA9TVsSAnZWagAA8cIP/RGSnkXdCeqHRhxCj+tS\nJFhHWi0ukO3cp2D/AkNRac0qGOHacbadrQ8/Y0V7nwII2McAhG3xBoQycnnC\nq9RqoDTdCdqcaGY/o4TgXcpCcxNS9ZuCVO8sbLGJOnKQQ+vFZCm6GGv7xr4a\nQ0krANmkHP8nGcADQIRafWSo+uf3zSGzrSM5BecbMgXN3Ng+rWJSrFIs0amX\n0tG1bdHR8DDBKShKZQkYbR+Wlzkn4x03G1Hmu0bAnJRMo1whKhvaYh+lggTQ\ngby2tI6w8v+f52lpksnznEVyqRFKZOoNpuj9cZbGa3hKGgepJc1AUtzZ9y9U\n3KgzUb5gzwg2AbkhlLaumR8ecThSA5BFuwYexPGGPU9XDZt/BwWommHqheWI\nSgSMzJAzmQYT5LtNbS9rH4YwtoNpolTwQLQgRXoPjEVJSydO2JdraSQL9ZP0\nU9eQV+Jq5NB/0B4k4nc52Sg98HJIBgEDYLWrCqGeoZn9Bx9mJbcG6LEu28Hz\nEWrrVWneBQhBgXx2CUe8NifdKItM2Fn/UISa2a47knICQ1NJm60NvM9yLDZR\ndCF/ksyDeX+OACJfX0x68PfbqJzByAULzOKVGYA80uRM0ibcQnrY2ZYy5VPm\nmghTxokDNZ+6/zdJMacvUo5sH7V50jIUAig6UhXGKEynF+YPOzu1nQR8QT7R\n0T/7\r\n=IWHQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGEuInpw1q6y5V3hT6JfX63QUNnbUOWHjKD/1g9I14WNAiB6+CPj+RHpb79M01SUyYyvWM3hy9qmlDETnUPoqOqGtw=="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_2.2.2_1566370987066_0.6904819797755541"},"_hasShrinkwrap":false},"2.2.3-preview.1567576452664":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"2.2.3-preview.1567576452664","description":"web spider, support puppeteer, cheerio and so on, include task-queue and dispatcher","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.en.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","cheerio","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT","dependencies":{"express":"^4.16.4","cron":"^1.7.1","nedb":"^1.8.0","mongodb":"^3.2.5","puppeteer":"1.17.0","request":"^2.88.0","http-proxy-agent":"^2.1.0","https-proxy-agent":"^2.2.1","socket.io":"^2.2.0","source-map-support":"^0.5.11","typescript":"^3.3.3","reflect-metadata":"^0.1.13","moment":"^2.24.0","ansi-colors":"^3.2.4"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/cron":"^1.7.0","@types/nedb":"^1.8.5","@types/mongodb":"^3.1.27","@types/node":"^11.9.4","@types/puppeteer":"^1.12.4","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","markdown-toc":"^1.2.0"},"gitHead":"4d21e46046b26dcd3d98392dc4974d5c65817a88","_id":"ppspider@2.2.3-preview.1567576452664","_nodeVersion":"10.16.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-opYlMbO1g23ShTBdo/fRosM5tAdJC8urLfDuySGZ+EZKKcRHFR/dYMPcqitmKxEdumIVqrfziJbi570QtIW/5A==","shasum":"97b8c033770f76a52290af4bb5319664c729d0fe","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-2.2.3-preview.1567576452664.tgz","fileCount":225,"unpackedSize":5178266,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdb1OlCRA9TVsSAnZWagAAOPkP/2CNXQcpX0U718wYXJ9e\nu+15fZTFDcnhDe1dw/HUXOZy+fsZAZOVum12p1nlXW4jspTATqFZZLJ7xsZO\nMy+Q5XhOl/c0K7wFqfqBjRhrv+hJlkpVR1quvU4D1h5Dh5N35JJ5m2rbfedU\nRlALGQNiShw64ndF6tTfvgKhzGsmv/M8bkJMrQJ5Fe1zevXc+AqxS598AtBs\nspPRtFrfKjHNY5xSdryGRuCLZWAwoqZX07pLE1APxbKMxQvBuubrZPonJCy1\nn4lSQRr+6gFWoy1HFkAjn2hQ5uqYsEJwbAMXbRs+qqPN9PhKMvlkyB3o1/rD\nbb4O7BlJo+qFATXKNQJVg6AZ6eDwlHXwGHNL3et70r8gKNZCDf15f1eE/fMz\nystznViolrrByfT6GYWg2ZXkhzMhMAoqLLGyMDGB/+NPVfjG7cF1iczlJqtF\ncHcGKj790D6Fj+lDvZIQQHSLiZyXrC/6grLazktcNLJv321FQNznMDjfRnut\nW4V6r5sWC2l92QngqOfFBlwbnKTKM8bNHMK4VlGijt+TEh7ZVp0LFvoOYULp\nmhWw4DAmeMvesv1/lDNQXC4soCLSJnwsdBeDDdiZAp5fSAWtgAeCXOqBrwPR\nPJiCwqEtOIWkIC/v3R/xxPbZupW/LtMUKXlnUPagNOkbWNRj1C9nNbX13WLC\nlzNs\r\n=oc9Z\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICaYmo6gGoZUzFCPljD1wyPHsTCJyLlWCjKanGSjcp+AAiEA7xPw0dg4xk+UgHtk2AzU/ZjLCax52KFkzDeR/f9cixQ="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_2.2.3-preview.1567576452664_1567576996622_0.8231141346885404"},"_hasShrinkwrap":false},"2.2.3-preview.1569208986875":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"2.2.3-preview.1569208986875","description":"web spider, support puppeteer, cheerio and so on, include task-queue and dispatcher","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.en.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","cheerio","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT","dependencies":{"express":"^4.16.4","cron":"^1.7.1","nedb":"^1.8.0","mongodb":"^3.2.5","puppeteer":"1.17.0","request":"^2.88.0","http-proxy-agent":"^2.1.0","https-proxy-agent":"^2.2.1","socks-proxy-agent":"^4.0.2","socket.io":"^2.2.0","source-map-support":"^0.5.11","typescript":"^3.3.3","reflect-metadata":"^0.1.13","moment":"^2.24.0","ansi-colors":"^3.2.4"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/cron":"^1.7.0","@types/nedb":"^1.8.5","@types/mongodb":"^3.1.27","@types/node":"^11.9.4","@types/puppeteer":"^1.12.4","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","markdown-toc":"^1.2.0"},"gitHead":"316eb608760f71a3a0a7c09a75c57a92627a89aa","_id":"ppspider@2.2.3-preview.1569208986875","_nodeVersion":"10.16.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-yR9YS0awbIYDu4GgaSC4Hr4sfCxAMauFxwNfA/sNI/eo+syskfRFLrrlbrRc7FFw3NuA7vWvDkYkyTPVR2gNFg==","shasum":"fb7b81e81f6ab3eb3af451720485a901f519f729","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-2.2.3-preview.1569208986875.tgz","fileCount":225,"unpackedSize":5179413,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdiDroCRA9TVsSAnZWagAATSsP/2P80Q2KUrl8l54qFCJA\nksEhHxdOU4he5mhNSdbuQYW67cnsyWseu9ZpJKWSqla+TGitV58m2wmY+0A8\nyUBJnzAx2KXTXYivrynmFGUgqOQYUFddJKqJ23BpxJP7ohpBu5zQqLrsKium\nd7Md1M5wwl/dBtEeJmTnSWC2XUlcDauUemiEOovE8H3b+esR0ca4lgJToZPH\nZ7F4elM84kmT61HsH2Uls3OUyE/Uu5IY8jwlpCUsLUkF0EfJLrJJjl+tvfRC\nVnwO3CPmmLKFtrZy1RRd6MHa8KcaXcWGLet6JZXDwBTfYA3eSmx8uvrDh9XH\nDjmYxLm2NFg2cZtJkSRcbQX/D0sS37g1sAt0W0RNKWvf+EKMgkNqvjQEuVDP\nkzGBkuNd/JXJim6I9cj0nXX6LK0bk4Q1PQPRwg3UuQd8SyA+qo9BNYcn4ywc\nfiO3LJkTlHXg6XwPH8plxCPRwyJ5uZMkPafm8Ve9mZNhci5icmKDXFJ2mIC4\npqYDUOv8yyQTmeORQ90eqsOi33dIrPR/LuVeoJSiXdurlQvt1h0vglNeSGZQ\nDVC+MaNQqnNFbeuJ22OK41cpFCYyCU5TNFlvQH48KRSEGjQB4CrVBvPcsbo3\n//98ubUFc9p/R0kXn3o/3e6Pgo0oTkcSe4U9Ra9lo/p+YMfjd7L+LGdq03zY\nMfn1\r\n=R6F/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGlWma9Tysop+Dm5fJb0WMyswhmrFzWUnSwMP1zM06j/AiBTP9S+PZsdZyYDfN/CIL07FusXqEiI16i9N4oPUC2uyg=="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_2.2.3-preview.1569208986875_1569209063664_0.5193638525784516"},"_hasShrinkwrap":false},"2.2.3-preview.1574909694087":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"2.2.3-preview.1574909694087","description":"web spider, support puppeteer, cheerio and so on, include task-queue and dispatcher","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.en.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","cheerio","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT","dependencies":{"express":"^4.16.4","cron":"^1.7.1","nedb":"^1.8.0","mongodb":"^3.2.5","puppeteer":"1.17.0","request":"^2.88.0","http-proxy-agent":"^2.1.0","https-proxy-agent":"^2.2.1","socks-proxy-agent":"^4.0.2","socket.io":"^2.2.0","source-map-support":"^0.5.11","typescript":"^3.3.3","reflect-metadata":"^0.1.13","moment":"^2.24.0","ansi-colors":"^3.2.4"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/cron":"^1.7.0","@types/nedb":"^1.8.5","@types/mongodb":"^3.1.27","@types/node":"^11.9.4","@types/puppeteer":"^1.12.4","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","markdown-toc":"^1.2.0"},"gitHead":"d50322a93138c9b604b74ae7e6d9e199b23bf169","_id":"ppspider@2.2.3-preview.1574909694087","_nodeVersion":"10.16.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-/Q3jIreiSVB5OuAt0A2YtFSpL0NEag+5pSQYn3lE7rjFNazyuOH/ma5LZR8yokj7pcjVG4YA8cib/hnSaUx3bw==","shasum":"e72fafcfb568a3b1850f99035da7be285ebda184","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-2.2.3-preview.1574909694087.tgz","fileCount":229,"unpackedSize":5187715,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd3zrKCRA9TVsSAnZWagAAgGcQAKScM2PS8eVxY/Ki7z0t\nypK3RcFp+L/l41gcuAG8mjR6ZHzP7/iUE8/7JoquBk6O9uq8qPxJDHxvD0eI\nMmiHmSHZFQGrs3Qc4ndYLDkcGGBDAcn5755JgVWqp3rzpoURpfxjX4EE156f\nabo077na5c3m8pNWuUm26/nLuwhNp5LnKPHxoy6FzyGf2ZcwijxEFFiKfLq0\nU3e3otWdkFSSRMnXcu1p2bEaCeJD+IeX6TYcCe3DYyNDm+V8tXozSeQTiPe8\nNL8FVK8vKFRGq1wY6chjF9GoL63TsIfzXePGRct38tJ0szmeWMGqSamzUXr3\nNQZg14o5/9gsji61kwN1lyK5/1FCHINvmZ+Xwu6+W8g7oJOakb3HRYIB+9GF\nTkcg/meNPNFrJl9C2TQgspwZGmTHmWmvLpwBXoqHzkmZ3S9PfuytQDtesqcQ\nRpqyWM9mzGFATISDTWuS5wwgngRA02Syj9yb2pi9eN2KNGBgcnXSunJfOF60\nITQROgi4VQY27kRCTQgTwEvpmAsLs9IitPS6yIMQnbcjZqT8l+tWSXT1vSRe\nqsaVppkK0vN1f+XYmwmM8fT/OI+a1+uG0aiDMIn2QNCDu+Rg/oW71ZbtVl5G\n510qz0iTU3SGnMZp/SwXyZpdh1e/a+iN0flgMdvgAg9Ni5O546oxifhWucHL\nJNtI\r\n=Yhtc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC84Pqnt8fc23kulNo9Jq2ryulWNKwQWgfhkZ1pI8niBAIgBaWiN1mt0x4zvODm0x6d3uU78WmgzxFHxXzfAvmu9gU="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_2.2.3-preview.1574909694087_1574910665224_0.6996435819871307"},"_hasShrinkwrap":false},"2.2.3-preview.1577240874492":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"2.2.3-preview.1577240874492","description":"web spider, support puppeteer, cheerio and so on, include task-queue and dispatcher","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.en.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","cheerio","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT","dependencies":{"express":"^4.16.4","cron":"^1.7.1","nedb":"^1.8.0","mongodb":"^3.2.5","puppeteer":"2.0.0","request":"^2.88.0","http-proxy-agent":"^2.1.0","https-proxy-agent":"^2.2.1","socks-proxy-agent":"^4.0.2","socket.io":"^2.2.0","source-map-support":"^0.5.11","typescript":"^3.3.3","reflect-metadata":"^0.1.13","moment":"^2.24.0","ansi-colors":"^3.2.4"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/cron":"^1.7.0","@types/nedb":"^1.8.5","@types/mongodb":"^3.1.27","@types/node":"^11.9.4","@types/puppeteer":"1.20.3","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","markdown-toc":"^1.2.0"},"gitHead":"30e6465a5df94b6564d32ccb4c2fa737fc5d55f1","_id":"ppspider@2.2.3-preview.1577240874492","_nodeVersion":"10.16.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-txvAMi0OhKigM/6hqeYuM1uYfJoDR7FnsMaemZ66x6AtATKDMc91MF/+mQKl9KQhSDrhfmaXCqkT5jdBOXis1g==","shasum":"42fc9e8599855e8deca3206ac0e99477f61a184d","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-2.2.3-preview.1577240874492.tgz","fileCount":229,"unpackedSize":5201335,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeAslECRA9TVsSAnZWagAAIJYP/i8oAFcPYywSVJ603cGo\n4EJZ9F+/+91bAeeW2wUZUmp9zrDpiIPqRhmGqyjXyjznxQ4i5epTbk3Iea43\nXIje7ggveQa6FxOLNlboHjUhdgwc3+2vELhzWMt5A17LZwq8+bvxqjrr3C2x\nbydiHJQdSzB+6gIg8IY+ngRCnC+Qk2divND6VWM/nsX/nTuj4G4zDh96jAcU\nTgXOH1zRxzyAtckCmeG7QqH9fMQKHVHuk/AFMZ+cRFSJe1cJAUNVMdlzRh4u\n/Y1fl3VsGiqz8G/caDqiUSFe3U2vDjk6kTBtwrt0ALUP1rVdokeDYfQ+vNcL\nNCOED+UYDYxL8kcM+x+QUmIQozAz3kvMKf0TStqJl5vtt7a394vaK8BqRrNY\nWu7H5suIHV3/NmUVwAQn0NSN+O59IpFiRfYMC2jmZ+qx9eOPom2Wz/LFqobx\nJkCUMlpPhStI7qZJ4nGNmTq6ImBrDwUV6jF8Unel83wqg3euHfMGajgRmqps\nO0WYmB741xiXL83buC0xWIafY7gKwAs++8itnLp7uedVTtKqL+BVyqTGcOvA\n9fB5j8KhSL5xVqleuApOk75CRCk0v4LvVLIAuKvsDDqVmlL2TeqcTJNiN11w\no58NaL6/AebtHhu06h7hSkaI9KeEAikm6OGyt8+jJIDBJD3Y7GzqBBxsqmev\nSj7W\r\n=ZeVD\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEhrBJIfdIYamqv/JAVwJkv9dc/F3M7FS+swSnBmsN0SAiA7fb67VzYfju1qnlfg9xHflOvIn24rFGMF5fDy94MVbw=="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_2.2.3-preview.1577240874492_1577240900412_0.807692722213508"},"_hasShrinkwrap":false},"2.2.3-preview.1577332807380":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"2.2.3-preview.1577332807380","description":"web spider, support puppeteer, cheerio and so on, include task-queue and dispatcher","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.en.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","cheerio","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT","dependencies":{"express":"^4.16.4","cron":"^1.7.1","nedb":"^1.8.0","mongodb":"^3.2.5","puppeteer":"2.0.0","request":"^2.88.0","http-proxy-agent":"^2.1.0","https-proxy-agent":"^2.2.1","socks-proxy-agent":"^4.0.2","socket.io":"^2.2.0","source-map-support":"^0.5.11","typescript":"^3.3.3","reflect-metadata":"^0.1.13","moment":"^2.24.0","ansi-colors":"^3.2.4"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/cron":"^1.7.0","@types/nedb":"^1.8.5","@types/mongodb":"^3.1.27","@types/node":"^11.9.4","@types/puppeteer":"1.20.3","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","markdown-toc":"^1.2.0"},"gitHead":"b583dadbf519d9e88495b3a16cb7e5c425a57187","_id":"ppspider@2.2.3-preview.1577332807380","_nodeVersion":"10.16.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-52/14QSi39vilypE8d1ybKYyfpc7Jw6f2r44BESCL4MI/oRQIVzIkmuUlcdCIVZMhMdWDEXRezNegLYetXcVuA==","shasum":"449a1ad948dee011907889dc0d6d5f77864105b8","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-2.2.3-preview.1577332807380.tgz","fileCount":229,"unpackedSize":5201900,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeBDCSCRA9TVsSAnZWagAATyMP/04C6JvsSWTNlVFG6zye\nmhAyIy7sV0UVB9/HjUBK0oJiOYpiH4lbvjTKFwsQH32Q9EZqVLvj4j01otB6\nbO1MOz0PPvw/THOSTZJIY2sYiSMfBN71JrupMzOPgjwOVfT8GnhNuKAeipqT\ngNYttuZgdbaNP4MhcsZ798UfUmHU8aSjJPIyeFcqAfsXL8RdQvvMQg4G+hij\nvluw5IBsOp4Skji/YYuN2/hcj2mT2luTkZbBPyy0PVvHeuanUeoeVFp5qC9p\noQBc3dRInQHI1o0vkb8Ij60/QeJPL+N93ndzwuyNGGQH54mW+VTIO+zxFJ7q\nXUPXRI+J7qQoYasUg/tqRA9XXrxkFJvynV1mgfx2bZg5gm/5Tw5wYvw+s9FV\nw8g7tgY3/1mBK6M/9fEw1e8RmeYhotgNrEr9vDq/G4HdGSS4aJctKSFQ2Ejw\n90YCfDenoXzKkEg/aTY8KzwLlSjj23TWXFptGFA4nla/ZApO7vrk5eUqVhTt\nzEWAXs0/ExEeI6OKAPMBlMjyBOaDxx9avKG79c8YKcZgFS6zhxbg/HQlQ+BW\nY41AfKgERyw5KEorEBlgod4N4zBdH9R996em3sigD5M/U96+H0xMbFr2hSn4\nFWSGVG6+ahkmQ87/y5JtyVoY8q1MrIC4Yk7rQR5hom/sm2DO0MXjTNZBHvKY\nWjnn\r\n=fW14\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCT7TlaUyrTEZ9FPQjjls7HvkupMxMILnnGJdXq4XwZPAIhAOF5VN6j423KIqxHr7zP7FDhWMLU5pj8e3+RHrYFcNWv"}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_2.2.3-preview.1577332807380_1577332881593_0.4094538207195908"},"_hasShrinkwrap":false},"2.2.3-preview.1578363288631":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"2.2.3-preview.1578363288631","description":"web spider, support puppeteer, cheerio and so on, include task-queue and dispatcher","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.en.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","cheerio","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT","dependencies":{"express":"^4.16.4","cron":"^1.7.1","nedb":"^1.8.0","mongodb":"^3.2.5","puppeteer":"2.0.0","request":"^2.88.0","http-proxy-agent":"^2.1.0","https-proxy-agent":"^2.2.1","socks-proxy-agent":"^4.0.2","socket.io":"^2.2.0","source-map-support":"^0.5.11","typescript":"^3.3.3","reflect-metadata":"^0.1.13","moment":"^2.24.0","ansi-colors":"^3.2.4"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/cron":"^1.7.0","@types/nedb":"^1.8.5","@types/mongodb":"^3.1.27","@types/node":"^11.9.4","@types/puppeteer":"1.20.3","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","markdown-toc":"^1.2.0"},"gitHead":"4c9574701779c4ba270a1e9a418d778ab3f126a5","_id":"ppspider@2.2.3-preview.1578363288631","_nodeVersion":"10.16.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-ru+HNSb/Kzv4KGHKrbFRzrQv0GRBZMBIMcBYj7iLoCBLIGQc9xvOHhKAAkA3zGH7/Vj3OPyWP/uYR7t7TICflw==","shasum":"7a95b081ab4b80afc431d932e0cf7dfcc41a26e8","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-2.2.3-preview.1578363288631.tgz","fileCount":229,"unpackedSize":5199307,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeE/KCCRA9TVsSAnZWagAAgikP/3o9DfRV2VgPjmxHummo\nGCs8ry4GFVCs7lvd0iuOXx822Wgxxhiymn/rK7ddXNaCSwTL5u8TJqEnNDVm\nbGbTGiV6j+evpipRgWSoNiVthszhwoP7A7CSM7J1WRb3qvRvr+rpP6EQkYg6\nvARXxZ/0o+B6HazbEfLIly5QlsEoV5wn9ME7cyVQl08FnxraqIJOmfF4EzMC\n5Qdn+fDfPmqk0aD1zwnydwDMfJb8v+6mdFx8X/ggP80Uq0Jzm4sVKPFc2OpG\nDbJzimMCjbjPWJoFdc/arofBn29tzY4GGr7CuQ5kxjYX5fH40X/nm3fUgawy\nyU3pYSp16nIid9PmFZbnc2g4b4AIs35pAybWb+dF0dp1xByMggzH8itKzdYK\nZysRGlCtuG658riUE6f+E5u+kYQSrc0f0qeVa2Dn1bydZhG8QH5968Gk75dp\nMP5MYqc8IMICRfxRBmxfvTVHU/kp7CKvvc5ywQbqWyhImUBf1IvLHM5yrlKT\nS0+Vv0Sq6nICBGaQh0XfwLCEwq7dpfpeJV9tnqzHnyRnNjFiWbqzA+KiQ+Ts\nl+Td9OkvVYdvjkx4ZjTgWN4cySy4c1nSSL/411D1UVIuxQTq8xiTA+IuA9+W\nOOKS4G7lK2KffC5YDWoWackfPk2F1/bmOt9z2XgzZp0lOMJ0dlB9PxyC1CTv\n9Cte\r\n=SCOR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCaOEsRCKJ2Yoj7fVwhs0hh8iXzoBkI27vGkyFMfGKgaQIhAKn4F2TygcnDoYuethOAhFx4FrB170XEcnEFkstZWCUK"}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_2.2.3-preview.1578363288631_1578365569878_0.18845988502329858"},"_hasShrinkwrap":false},"2.2.3":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"2.2.3","description":"web spider, support puppeteer, cheerio and so on, include task-queue and dispatcher","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.en.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","cheerio","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT","dependencies":{"express":"^4.16.4","cron":"^1.7.1","nedb":"^1.8.0","mongodb":"^3.2.5","puppeteer":"2.0.0","request":"^2.88.0","http-proxy-agent":"^2.1.0","https-proxy-agent":"^2.2.1","socks-proxy-agent":"^4.0.2","socket.io":"^2.2.0","source-map-support":"^0.5.11","typescript":"^3.3.3","reflect-metadata":"^0.1.13","moment":"^2.24.0","ansi-colors":"^3.2.4"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/cron":"^1.7.0","@types/nedb":"^1.8.5","@types/mongodb":"^3.1.27","@types/node":"^11.9.4","@types/puppeteer":"1.20.3","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","markdown-toc":"^1.2.0"},"gitHead":"4c9574701779c4ba270a1e9a418d778ab3f126a5","_id":"ppspider@2.2.3","_nodeVersion":"10.16.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-MwdRD2BpohXIVxPUUGuXobtY3bxJgTQ5BEhQ2DHK5jXTlagUPLVSzairNL+BfYtemm+ADVtkDaKkfHkPFAGKkQ==","shasum":"013bfe34d2692941240dc7f84702283e688ef40b","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-2.2.3.tgz","fileCount":233,"unpackedSize":5244849,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJejCGHCRA9TVsSAnZWagAAj0gP/R600w3dc8NoG0iKtjhB\nUw2dW9/dMCy6wpBTRNEmbptznElxrU5+P+Oyx38beNq+kDRGizkbwaF5Re5a\ndys8mgj7CzBkPGd1P9ThBfOZrm+naGDIagdONiXo2u8+eFg5kk7BgYgZgGFK\nTaSyp1VZTX6v0rzA07TeD2XZzH9mp0RqVfpUicGIVBJG+xRTSWLy4KkQnOTq\nrw/hUQexy+2LIbgal2i3ukw36XPYInlgbIMB6FPY28KZrpQnxZgTaMIdk2qz\n53fTn4yZul/D7B/GZFCQWJElyrLk5S+W2Sfwma71MyQhnKE2gvt6aDARhUKR\nXy7B4q73p0XSaqRXmExeWo1Siy4ka6qUm6Zp8TzkcRAPSPX38+PRn7Jk00yU\nqUuFNtBPtfp9I4RwNsVf841j4Mgyq6E5huq+A5bBEMEAGWe61cWdU1qAweON\nRJ45tyAnkAbnLL6MT0rdRl54TWRbA7Va1ncDY2Pkw7fKlxCwlfVAP3MUNchO\nqPY309r4D4ibVGJYAjc/UQFCp7C7sfz6hPvEmhhN9wfMYmWcYB98IRkfDwr1\nahThpBCG0OSfnguZ/5Vi660hzE6X3jzhfR26b6xluzswjxYrnY/WjfSz0AOk\nNZ/Xm4PLMT+oW+MKCJajsbHFaJEqEb0U2BGGaitP/lq2gMeJx/UArM72cTyz\n7dCJ\r\n=u98B\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICq0vfjk9Kd8cfk5NKaJ7U/kg6fRTtF1fzGHx6Ht5pkTAiEAoShKGkuxhotkTIpi2hYTUh+dpUqjrNIS56Y4JoyzbqI="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_2.2.3_1586241926665_0.7774844781669119"},"_hasShrinkwrap":false},"2.2.4-preview.1595667732337":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"2.2.4-preview.1595667732337","description":"web spider, support puppeteer, cheerio and so on, include task-queue and dispatcher","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.en.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","cheerio","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT","dependencies":{"express":"^4.16.4","cron":"^1.7.1","nedb":"^1.8.0","mongodb":"^3.2.5","puppeteer":"2.0.0","request":"^2.88.0","http-proxy-agent":"^2.1.0","https-proxy-agent":"^2.2.1","socks-proxy-agent":"^4.0.2","socket.io":"^2.2.0","source-map-support":"^0.5.11","typescript":"^3.3.3","reflect-metadata":"^0.1.13","moment":"^2.24.0","ansi-colors":"^3.2.4"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/cron":"^1.7.0","@types/nedb":"^1.8.5","@types/mongodb":"^3.1.27","@types/node":"^11.9.4","@types/puppeteer":"1.20.3","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","markdown-toc":"^1.2.0"},"gitHead":"4279a8b1197083c7d761e4c59f9560338a64612b","_id":"ppspider@2.2.4-preview.1595667732337","_nodeVersion":"12.10.0","_npmVersion":"6.10.3","dist":{"integrity":"sha512-OMKNCQIyt1tI7lgPxFuDSxQwqrczIVz0/nxKk2ap6jvmXfvQaKubVeQtDmDkyudhLmUyJ0yeyoZKw28cJohrxw==","shasum":"e506726717f0e8afdb48d0d1fc320bd188f989db","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-2.2.4-preview.1595667732337.tgz","fileCount":224,"unpackedSize":5235806,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfG/Y0CRA9TVsSAnZWagAAbHAQAIJonFzQNTSpGXl+RQJM\nzSRx1wtL0WQX7LXE1xMXIT4yvFX9AVVePw0fCVPlRJ3xJuVm8t12t+uOIYEw\nZGkydQrZEmJp2W+b35lnR3zWErcFjVIH6MZR33SwxnrLBzveb7S/Hov5bJ4k\nN/OR3FvP2TAyA6EamLSDi6YjzfImE8Lu0TI5uzitpSctVK9WSaanE9ALYrOV\nh4NQalg4VXjT08gA8YG3bcQWM65e+1yyM+zbeYK5oJhMNo8BJTGZwK0RasMb\ns/xz18B9wWSG7nxt5O1CITWBBctneYjAV9sOZWQ9onOwvAhHlQ85iPMsWB8b\n03E90hg3SKa1NS/NXY9kcQKVjJUMEGkZwbaE1os8BHnXtjZgDWxRjHVwvK88\nneQlYRFVquJpY3r3N066VK+O5qwKFKDUxGaDhMnu0zJTs9Lt7ipXokW9Pb4v\ndhJCoL2E6tqCO3wXBi4jbf1brTT0RGC5qEPo8ECi5u2ZfZDx0OEJDqwN+hoM\nqg9KSfB87Z7U6ajPBIIKGwWgfCk89RKu/KWFBaO1xkX8bDi1+mHMhlaiK/vz\nSWJTOwee+s9gkJymdRoDDJW8672kZxPQE9qGo2/2XGCcuuOdWLuaSFl6ZPJs\nsEtuFpiK4nrhIrGR8EpM7FXVtTD7RoU5numhK1CjXsWFyeAJcfXiO14wxIl3\ndZvF\r\n=xkEU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFTfSeEQvPQNK6+0xrZW4i/CjAUQJsc060d3I0H6Yse+AiEA+cgwx2jXykNlaH3y98AnRYNnPKcMocdQfgu36zUCErI="}]},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_2.2.4-preview.1595667732337_1595668019950_0.006966364160041039"},"_hasShrinkwrap":false},"2.2.4-preview.1607350101966":{"name":"ppspider","author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"homepage":"http://github.com/xiyuan-fengyu/ppspider","version":"2.2.4-preview.1607350101966","description":"web spider, support puppeteer, cheerio and so on, include task-queue and dispatcher","main":"./lib/index.js","types":"./lib/index.d.ts","scripts":{"auto build":"tsc","generate README toc":"markdown-toc -i ./README.en.md && markdown-toc -i ./README.md"},"keywords":["spider","crawler","puppeteer","cheerio","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT","dependencies":{"express":"^4.16.4","cron":"^1.7.1","nedb":"^1.8.0","mongodb":"^3.2.5","puppeteer":"2.0.0","request":"^2.88.0","http-proxy-agent":"^2.1.0","https-proxy-agent":"^2.2.1","socks-proxy-agent":"^4.0.2","socket.io":"^2.2.0","source-map-support":"^0.5.11","typescript":"^3.3.3","reflect-metadata":"^0.1.13","moment":"^2.24.0","ansi-colors":"^3.2.4"},"devDependencies":{"@types/express":"^4.16.1","@types/jquery":"^3.3.29","@types/cron":"^1.7.0","@types/nedb":"^1.8.5","@types/mongodb":"^3.1.27","@types/node":"^12.10.0","@types/puppeteer":"1.20.3","@types/request":"^2.48.1","@types/socket.io":"^2.1.2","markdown-toc":"^1.2.0"},"gitHead":"1d8b18b1527979e4c8eb57717c33c59ab589ddb9","_id":"ppspider@2.2.4-preview.1607350101966","_nodeVersion":"12.10.0","_npmVersion":"6.10.3","dist":{"integrity":"sha512-+FL9YKJ6/DZ1cWtJE3MHAHllcCDJCwWqTmrQH9PuuicZKl220E0i0jUqIldNIllhHvMWrrTN2CXY+9tofGZ+7A==","shasum":"1c2fea966cda61aa0417b5f369a9e899afb73e5c","tarball":"https://registry.npmjs.org/ppspider/-/ppspider-2.2.4-preview.1607350101966.tgz","fileCount":230,"unpackedSize":5252486,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfzjd/CRA9TVsSAnZWagAAd+MP/1EEvRDCp8NLZjtzDQiP\nwWAYAGZWao0b5BidrZHnawtahwpFfkq+9fFvUlV841YNnWPsqbbl55QgdUpf\nllEVmtjBMS+xREP2MivXMK/7GsSHN3InrN5MVrY14Qpy2TYsJnAhj0itB19R\nV/RRdrSWexiKadais9+pRnJ/vUp5zR6E817MDHQ5iBS9VParfrVah1uG1VkK\n07klZ5kjZqRQx9lJMucCjjyHSZN6T4xUuoo0I0Q4ZIakNp7j+NkpVMw7Vzaa\n9cn66/Ufmqj+c9apq5RkSRra2u4Evg/9mv91CohK8uNhkbFh32+OiGpqYvb9\nP70Wk5JbgB1OqBtZXPvUVE74RSDKHzciQeFXPSXBL55bQJO4fJo60qRpiBio\nAHhyy16XYL6Fcq8iORDcmOF9+mdeOo+6a00z4u/Exzfe9PiyJKTVQKwluwTV\ny4ovoR+8QO4sz2UrlfipmkeMornT9n5Q9DzzvxF8Iyf8bh1kW/4ze7AzKBQS\ndEsGYZdJskZkfcOhUSH6LLtO8cNhVtqZqrxxhlD+Xobr+UmYyTJyUvbC366Y\nG2f27UZR4OtVKfwjzU14Jb0XR9GOzgBWCHC2mQX2g7oh3onExwPYdUV6I07M\n+BbNT9ruhCDDcFpkTEdJz2RruaUZoP9ndkkj9OXULJJWaKlPBII2xxyyGlLp\npDTL\r\n=Jvno\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD6qP6gUQrAgCBoIY0WvRWEKJ/Kg4PTKLKg30ejJwUm/gIhAMAg+T6lNp0uUbLatlqP5JFddAg7xcjdcL/YfRqhS/jz"}]},"_npmUser":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"},"directories":{},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ppspider_2.2.4-preview.1607350101966_1607350142604_0.4072146077599872"},"_hasShrinkwrap":false}},"time":{"created":"2018-03-29T02:20:25.243Z","0.0.1":"2018-03-29T02:20:25.363Z","modified":"2022-05-13T07:57:25.181Z","0.0.2":"2018-03-29T03:32:41.018Z","0.0.3":"2018-03-29T08:04:01.837Z","0.1.0":"2018-06-08T15:34:23.947Z","0.1.1":"2018-06-13T04:44:42.028Z","0.1.2":"2018-06-13T09:53:21.084Z","0.1.3":"2018-06-13T10:04:08.454Z","0.1.4":"2018-06-16T03:12:23.620Z","0.1.5":"2018-06-16T03:25:42.867Z","0.1.6":"2018-06-16T03:50:06.788Z","0.1.7":"2018-07-06T05:25:29.585Z","0.1.8":"2018-07-16T01:52:46.836Z","0.1.9":"2018-07-19T06:47:13.720Z","0.1.10":"2018-07-19T07:31:44.104Z","0.1.11":"2018-07-19T10:33:34.775Z","0.1.12":"2018-07-23T03:09:54.807Z","0.1.13":"2018-07-24T05:56:59.408Z","0.1.14":"2018-07-27T07:41:22.256Z","0.1.15":"2018-07-30T01:45:45.296Z","0.1.16":"2018-07-31T03:26:45.788Z","0.1.16-next.1535017456552":"2018-08-23T09:54:06.732Z","0.1.1-6.1535017456552":"2018-08-23T09:58:55.150Z","0.1.16-next.1535018837036":"2018-08-23T10:07:36.086Z","0.1.16-next.1535019295477":"2018-08-23T10:15:05.678Z","0.1.16-next.1535095470967":"2018-08-24T07:24:58.883Z","0.1.16-next.1535096018584":"2018-08-24T07:33:56.956Z","0.1.16-next.1535097389084":"2018-08-24T07:56:39.962Z","0.1.16-next.1535097570810":"2018-08-24T07:59:37.821Z","0.1.17":"2018-08-24T10:18:04.000Z","0.1.1-7.next.1535523973711":"2018-08-29T06:29:49.157Z","0.1.17-next.1535524257275":"2018-08-29T06:31:16.684Z","0.1.17-next.1535527033931":"2018-08-29T07:17:32.190Z","0.1.17-next.1536904095120":"2018-09-14T05:54:35.344Z","0.1.18":"2018-09-19T10:16:35.718Z","0.1.18-next.1542610421188":"2018-11-19T07:01:49.552Z","0.1.19":"2018-11-19T08:07:10.720Z","0.1.20":"2018-12-10T07:17:39.164Z","0.1.21":"2018-12-24T03:07:37.833Z","0.1.22":"2019-01-28T09:42:07.415Z","0.1.23":"2019-02-20T13:36:13.756Z","0.1.24":"2019-03-07T06:35:20.686Z","2.0.0-preview.1554096924744":"2019-04-01T05:40:03.871Z","2.0.0-preview.1554096924745":"2019-04-01T05:49:07.841Z","2.0.0":"2019-04-04T11:33:25.200Z","2.0.1":"2019-04-22T03:21:35.538Z","2.0.2-preview.1556503467862":"2019-04-29T02:06:25.840Z","2.0.2":"2019-04-29T02:19:44.690Z","2.0.3":"2019-05-05T08:07:42.372Z","2.0.4":"2019-05-08T10:06:52.269Z","2.0.5":"2019-05-09T06:46:48.984Z","2.1.0-preview.1558409233884":"2019-05-21T03:28:11.768Z","2.1.0":"2019-05-21T06:30:48.773Z","2.1.1":"2019-05-21T06:45:21.398Z","2.1.2":"2019-05-21T08:45:47.168Z","2.1.3":"2019-05-24T04:40:38.909Z","2.1.4":"2019-05-28T13:16:11.824Z","2.1.5":"2019-05-28T13:20:56.059Z","2.1.6":"2019-05-28T13:23:24.374Z","2.1.7":"2019-06-02T14:52:04.907Z","2.1.8":"2019-06-02T15:44:10.126Z","2.1.9":"2019-06-03T05:49:34.853Z","2.1.10-preview.1559713782910":"2019-06-05T05:52:57.372Z","2.1.10-preview.1559739580863":"2019-06-05T13:00:29.478Z","2.1.10":"2019-06-06T08:40:23.668Z","2.1.11-preview.1560242908801":"2019-06-11T09:03:01.509Z","2.1.11":"2019-06-13T08:32:13.268Z","2.2.0-preview.1561029307267":"2019-06-20T12:44:10.228Z","2.2.0":"2019-06-22T01:20:05.088Z","2.2.1-temp.1":"2019-06-22T02:39:25.614Z","2.2.1":"2019-06-22T02:46:08.876Z","2.2.2-preview.1562823732385":"2019-07-11T06:05:14.379Z","2.2.2-preview.1562895051605":"2019-07-12T01:59:26.922Z","2.2.2-preview.1562925511745":"2019-07-12T10:00:00.433Z","2.2.2-preview.1564463764729":"2019-07-30T05:45:34.264Z","2.2.2-preview.1564551925339":"2019-07-31T05:50:35.995Z","2.2.2-preview.1565077196541":"2019-08-06T07:52:06.420Z","2.2.2-preview.1565240656871":"2019-08-08T05:06:05.149Z","2.2.2":"2019-08-21T07:03:07.399Z","2.2.3-preview.1567565333638":"2019-09-04T02:52:07.722Z","2.2.3-preview.1567567117971":"2019-09-04T03:19:32.756Z","2.2.3-preview.1567576452664":"2019-09-04T06:03:16.941Z","2.2.3-preview.1569121574515":"2019-09-22T03:35:31.866Z","2.2.3-preview.1569208986875":"2019-09-23T03:24:23.921Z","2.2.3-preview.1574827952853":"2019-11-27T04:16:22.887Z","2.2.3-preview.1574828593065":"2019-11-27T04:23:58.599Z","2.2.3-preview.1574833261676":"2019-11-27T05:42:12.410Z","2.2.3-preview.1574836558253":"2019-11-27T06:36:58.761Z","2.2.3-preview.1574909694087":"2019-11-28T03:11:05.460Z","2.2.3-preview.1576131038225":"2019-12-12T06:13:15.674Z","2.2.3-preview.1577237734925":"2019-12-25T02:04:46.951Z","2.2.3-preview.1577240393827":"2019-12-25T02:20:14.760Z","2.2.3-preview.1577240874492":"2019-12-25T02:28:20.594Z","2.2.3-preview.1577332807380":"2019-12-26T04:01:21.854Z","2.2.3-preview.1578363288631":"2020-01-07T02:52:50.065Z","2.2.3-preview.1586241232005":"2020-04-07T06:35:22.837Z","2.2.3":"2020-04-07T06:45:26.876Z","2.2.4-preview.1595667732337":"2020-07-25T09:07:00.148Z","2.2.4-preview.1607319165789":"2020-12-07T05:49:03.839Z","2.2.4-preview.1607348673979":"2020-12-07T13:47:23.070Z","2.2.4-preview.1607350101966":"2020-12-07T14:09:02.855Z"},"maintainers":[{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com"}],"author":{"name":"xiyuan_fengyu","email":"xiyuan_fengyu@163.com","url":"https://github.com/xiyuan-fengyu"},"readme":"[中文文档](https://github.com/xiyuan-fengyu/ppspider/blob/master/README.md)\r\n\r\n<!-- toc -->\r\n\r\n- [Quick Start](#quick-start)\r\n  * [Install NodeJs](#install-nodejs)\r\n  * [Install TypeScript](#install-typescript)\r\n  * [Prepare the development environment](#prepare-the-development-environment)\r\n  * [Download And Run ppspider_example](#download-and-run-ppspider_example)\r\n    + [Clone ppspider_example with IDEA](#clone-ppspider_example-with-idea)\r\n    + [Install npm dependencies](#install-npm-dependencies)\r\n    + [Run tsc](#run-tsc)\r\n    + [Startup ppspider App](#startup-ppspider-app)\r\n- [Deploy with docker](#deploy-with-docker)\r\n- [Examples](#examples)\r\n- [ppspider System Introduction](#ppspider-system-introduction)\r\n  * [Decorator](#decorator)\r\n    + [@Launcher](#launcher)\r\n    + [@OnStart](#onstart)\r\n    + [@OnTime](#ontime)\r\n    + [@AddToQueue @FromQueue](#addtoqueue-fromqueue)\r\n    + [@JobOverride](#joboverride)\r\n    + [@Serializable @Transient](#serializable-transient)\r\n    + [@RequestMapping](#requestmapping)\r\n    + [@Bean @Autowired](#bean-autowired)\r\n    + [@DataUi @DataUiRequest](#dataui-datauirequest)\r\n  * [PuppeteerUtil](#puppeteerutil)\r\n    + [PuppeteerUtil.defaultViewPort](#puppeteerutildefaultviewport)\r\n    + [PuppeteerUtil.addJquery](#puppeteerutiladdjquery)\r\n    + [PuppeteerUtil.jsonp](#puppeteerutiljsonp)\r\n    + [PuppeteerUtil.setImgLoad](#puppeteerutilsetimgload)\r\n    + [PuppeteerUtil.onResponse](#puppeteerutilonresponse)\r\n    + [PuppeteerUtil.onceResponse](#puppeteerutilonceresponse)\r\n    + [PuppeteerUtil.downloadImg](#puppeteerutildownloadimg)\r\n    + [PuppeteerUtil.links](#puppeteerutillinks)\r\n    + [PuppeteerUtil.count](#puppeteerutilcount)\r\n    + [PuppeteerUtil.specifyIdByJquery](#puppeteerutilspecifyidbyjquery)\r\n    + [PuppeteerUtil.scrollToBottom](#puppeteerutilscrolltobottom)\r\n    + [PuppeteerUtil.parseCookies](#puppeteerutilparsecookies)\r\n    + [PuppeteerUtil.useProxy](#puppeteerutiluseproxy)\r\n    + [PuppeteerUtil example](#puppeteerutil-example)\r\n  * [NetworkTracing](#networktracing)\r\n  * [Database](#database)\r\n  * [logger](#logger)\r\n- [Debug](#debug)\r\n- [Related Information](#related-information)\r\n  * [jQuery](#jquery)\r\n  * [puppeteer](#puppeteer)\r\n  * [nedb](#nedb)\r\n  * [mongodb](#mongodb)\r\n  * [Angular](#angular)\r\n  * [G2](#g2)\r\n  * [bootstrap](#bootstrap)\r\n- [WebUI](#webui)\r\n- [Question](#question)\r\n- [Update Note](#update-note)\r\n\r\n<!-- tocstop -->\r\n\r\n# Quick Start\r\n## Install NodeJs\r\nhttp://nodejs.cn/download/  \r\n\r\n## Install TypeScript\r\n```\r\nnpm install -g typescript\r\n```\r\n\r\n## Prepare the development environment\r\nRecommended IDEA(Ultimate version)  \r\n![Ultimate 版本截图](https://s1.ax1x.com/2018/06/13/CO6qRf.png)    \r\n  \r\nNodejs And Javascript Configuration in IDEA   \r\n![nodejs-config.png](https://i.loli.net/2019/07/11/5d2747dff288e83940.png)  \r\n![javascript-config.png](https://i.loli.net/2019/07/11/5d2747e00f32352225.png)  \r\n\r\n## Download And Run ppspider_example\r\nppspider_example github address  \r\nhttps://github.com/xiyuan-fengyu/ppspider_example  \r\n### Clone ppspider_example with IDEA   \r\nWarning: git is required and the executable file path of git should be set in IDEA  \r\n![IDEA git 配置](https://s1.ax1x.com/2018/06/13/COcr6S.png)\r\n\r\n![IDEA clone from git](https://s1.ax1x.com/2018/06/13/COc6mQ.png)  \r\n![IDEA clone from git](https://s1.ax1x.com/2018/06/13/COccwj.png)\r\n\r\n### Install npm dependencies  \r\nClick \"Terminal\" on the bottom side of IDEA to open a terminal and run the following command \r\n```\r\nnpm install\r\n```\r\n\r\n### Run tsc\r\nRun 'tsc' in terminal  \r\nOr  \r\nContextMenu on package.json -> Show npm Scripts -> Double click 'auto build'   \r\ntsc is a TypeScript compiler which can auto compile the ts file to js file after any ts file change  \r\n\r\n### Startup ppspider App\r\nRun lib/quickstart/App.js    \r\nOpen http://localhost:9000 in the browser to check the ppspider's status  \r\n\r\n# Deploy with docker\r\nhttps://github.com/xiyuan-fengyu/ppspider_docker_deploy/blob/master/README.en.md    \r\n\r\n# Examples\r\n1. Monitor website access speed, visualize real-time statistics, and view the details of all requests in the process of opening a web page [ppspider-webMonitor](https://github.com/xiyuan-fengyu/ppspider-webMonitor)   \r\n2. Dynamically set task parallel via cron expressions [DynamicParallelApp](https://github.com/xiyuan-fengyu/ppspider_example/blob/master/src/examples/DynamicParallelApp.ts)\r\n3. If you wants some queues to not be executed immediately after the application is started, look this [QueueWaitToRunApp](https://github.com/xiyuan-fengyu/ppspider_example/blob/master/src/examples/QueueWaitToRunApp.ts)\r\n4. Web page screenshot, super long page is supported [ScreenshotApp](https://github.com/xiyuan-fengyu/ppspider_example/blob/master/src/dataUi/ScreenshotApp.ts)  \r\n5. Get video's infos and comments from https://www.bilibili.com [BilibiliApp](https://github.com/xiyuan-fengyu/ppspider_example/blob/master/src/examples/BilibiliApp.ts)  \r\n6. Set proxy for a page [Page Proxy](https://github.com/xiyuan-fengyu/ppspider/blob/master/src/test/component/ProxyTest.ts)    \r\n7. QQ music info and comments [QQ Music](https://github.com/xiyuan-fengyu/ppspider_example/blob/master/src/examples/QqMusicApp.ts)  \r\n8. request + cheerio, crawling static web pages [CheerioApp](https://github.com/xiyuan-fengyu/ppspider_example/blob/master/src/examples/CheerioApp.ts)    \r\n9. Twitter get topic comments and user info [TwitterApp](https://github.com/xiyuan-fengyu/ppspider_example/blob/master/src/examples/TwitterApp.ts)  \r\n10. Depth-First-Search，DFS (By default, DefaultQueue is breadth-first search) [DepthFirstSearchApp](https://github.com/xiyuan-fengyu/ppspider_example/blob/master/src/examples/DepthFirstSearchApp.ts)  \r\n11. request + cheerio, crawling static web pages [QuotesToScrapeApp](https://github.com/xiyuan-fengyu/ppspider_example/blob/master/src/examples/QuotesToScrapeApp.ts)  \r\n12. [Music 163](https://music.163.com) download [Music163App](https://github.com/xiyuan-fengyu/ppspider_example/blob/master/src/examples/Music163App.ts)  \r\n    ![Music 163 download result](https://i.loli.net/2019/06/26/5d132eb516fb762204.png)   \r\n13. [ProxyPool](https://github.com/xiyuan-fengyu/ppspider_example/blob/master/src/examples/ProxyPoolApp.ts)  \r\n14. [Bandcamp Music download](https://github.com/banbuchunqiu/ppspider_bandcamp)    \r\n15. Set max try num of job [SetMaxTryApp](https://github.com/xiyuan-fengyu/ppspider_example/blob/master/src/examples/SetMaxTryApp.ts)  \r\n16. Page.evaluate with async function [PuppeteerEvalAsyncApp](https://github.com/xiyuan-fengyu/ppspider_example/blob/master/src/examples/PuppeteerEvalAsyncApp.ts)  \r\n17. Set AddToQueue/FromQueue name with a regexp string to create a series of queues dynamically [AddToRegexQueue](https://github.com/xiyuan-fengyu/ppspider/blob/master/src/test/component/AddToRegexQueue.ts)    \r\n18. Drag to complete the puzzle [PuppeteerUtil.dragJigsaw](https://github.com/xiyuan-fengyu/ppspider/blob/master/src/test/component/DragJigsawTest1.ts)  \r\n19. Solve the problem that some requests work abnormally [HandlBadRequestOnHeadlessApp](https://github.com/xiyuan-fengyu/ppspider_example/blob/master/src/examples/HandlBadRequestOnHeadlessApp.ts)  \r\n   \r\n# ppspider System Introduction\r\n## Decorator\r\nDeclare like    \r\n```\r\nexport function TheDecoratorName(args) { ... }\r\n```\r\nUsage  \r\n```\r\n@TheDecoratorName(args)\r\n```\r\nDecorator is similar of look with java Annotation, but Decorator is stronger.  Decorator can provide meta data by parameters and modify the target or descriptor to change behavior of class or method  \r\nIn ppspider, many abilities are provided by Decorator    \r\n\r\n### @Launcher\r\n```\r\nexport function Launcher(theAppInfo: AppInfo) { ... }\r\n```\r\nLauncher of a ppspider app  \r\nParams type  \r\n```\r\nexport type AppConfig = { \r\n    // all cache files and the db file will be saved to the workplace folder. You can save the data files to this folder too.\r\n    workplace: string;  \r\n    \r\n    // file path to save the running status，default is workplace + \"/queueCache.json\"\r\n    queueCache?: string; \r\n    \r\n    // database url, nedb or mongodb is supported. When the app will generate a little amount of data, use nedb, the url format: nedb://nedbDirPath; Otherwise, mongodb is recommended, the url format: mongodb://username:password@host:port/dbName. The default value is \"nedb://\" + appInfo.workplace + \"/nedb\"\r\n    dbUrl?: string; \r\n    \r\n    // import all task class   \r\n    tasks: any[]; \r\n    \r\n    // import all DataUi class\r\n    dataUis?: any[];   \r\n    \r\n    // all workerFactory instances, only PuppeteerWorkerFactory, NoneWorkerFactory is provided at present\r\n    workerFactorys: WorkerFactory<any>[]; \r\n    \r\n    // the port for web ui，default 9000  \r\n    webUiPort?: number | 9000;\r\n    \r\n    // logger setting\r\n    logger?: LoggerSetting; \r\n}\r\n```\r\n\r\n### @OnStart\r\n```\r\nexport function OnStart(config: OnStartConfig)\r\n```\r\nA job executed once after app start, but you can execute it again by pressing the button in webUI. The button will be found after the queue name in webUI's Queue panel.  \r\n\r\nParams type  \r\n```\r\nexport type OnStartConfig = {\r\n    // urls to crawl\r\n    urls: string | string[];  \r\n    \r\n     // if set true, this queue will not run after startup\r\n    running?: boolean;\r\n    \r\n    // config of max paralle num, can be a number or a object with cron key and number value    \r\n    parallel?: ParallelConfig;\r\n    \r\n    // the execute interval between jobs, all paralle jobs share the same exeInterval  \r\n    exeInterval?: number;\r\n    \r\n    // make a random delta to exeInterval\r\n    exeIntervalJitter?: number;\r\n    \r\n    // Task timeout, in milliseconds, default: 300000, negative number means never timeout\r\n    timeout?: number;\r\n\r\n    maxTry?: number;\r\n    \r\n    // description of this sub task type\r\n    description?: string;\r\n\r\n    // default BloonFilter，the job won't execute again after save and restart. If you want to re-execute, use NoFilter\r\n    filterType?: Class_Filter; \r\n\r\n    // default content of job.datas\r\n    defaultDatas?: any; \r\n}\r\n```\r\n[@OnStart example](https://github.com/xiyuan-fengyu/ppspider_example/blob/master/src/quickstart/App.ts)    \r\n\r\n### @OnTime\r\n```\r\nexport function OnTime(config: OnTimeConfig) { ... }\r\n```\r\nA job executed at special times resolved by cron expression  \r\nParams type  \r\n```\r\nexport type OnTimeConfig = {\r\n    urls: string | string[];\r\n    cron: string; // cron expression\r\n    running?: boolean;\r\n    parallel?: ParallelConfig;\r\n    exeInterval?: number;\r\n    exeIntervalJitter?: number;\r\n    timeout?: number;\r\n    maxTry?: number;\r\n    description?: string;\r\n    defaultDatas?: any; \r\n}\r\n```\r\n[@OnTime example](https://github.com/xiyuan-fengyu/ppspider_example/tree/master/src/ontime/App.ts)  \r\n\r\n\r\n### @AddToQueue @FromQueue\r\nThose two should be used together, @AddToQueue will add the function's result to job queue, @FromQueue will fetch jobs from queue to execute     \r\n\r\n@AddToQueue\r\n```\r\nexport function AddToQueue(queueConfigs: AddToQueueConfig | AddToQueueConfig[]) { ... }\r\n```\r\n@AddToQueue accepts one or multi configs  \r\nConfig type：\r\n```\r\nexport type AddToQueueConfig = {\r\n    // queue name\r\n    name: string;\r\n    \r\n    // queue provided: DefaultQueue(FIFO), DefaultPriorityQueue\r\n    queueType?: QueueClass;\r\n    \r\n    // filter provided: NoFilter(no check), BloonFilter(check by job's key)\r\n    filterType?: FilterClass;\r\n}\r\n```\r\nYou can use @AddToQueue to add jobs to a same queue at multi places, the queue type is fixed at the first place, but you can use different filterType at each place.  \r\n\r\nThe method Decorated by @AddToQueue shuold return a AddToQueueData like.\r\n```\r\nexport type CanCastToJob = string | string[] | Job | Job[];\r\n\r\nexport type AddToQueueData = Promise<CanCastToJob | {\r\n    [queueName: string]: CanCastToJob\r\n}>\r\n```\r\nIf @AddToQueue has multi configs, the return data must like \r\n```\r\nPromise<{\r\n    [queueName: string]: CanCastToJob\r\n}>\r\n```\r\nPuppeteerUtil.links is a convenient method to get all expected urls, and the return data is just AddToQueueData like.  \r\n\r\n\r\n@FromQueue\r\n```\r\nexport function FromQueue(config: FromQueueConfig) { ... }\r\n\r\nexport type FromQueueConfig = {\r\n    // queue name\r\n    name: string;\r\n\r\n    running?: boolean;\r\n\r\n    parallel?: ParallelConfig;\r\n    \r\n    exeInterval?: number;\r\n    \r\n    exeIntervalJitter?: number;\r\n    \r\n    // Task timeout, in milliseconds, default: 300000, negative number means never timeout\r\n    timeout?: number;\r\n    \r\n    maxTry?: number;    \r\n\r\n    description?: string;\r\n\r\n    defaultDatas?: any; \r\n}\r\n```\r\n[@AddToQueue @FromQueue example](https://github.com/xiyuan-fengyu/ppspider_example/tree/master/src/queue)  \r\n\r\n### @JobOverride\r\n```\r\nexport function JobOverride(queueName: string) { ... }\r\n```\r\nModify job info before inserted into the queue.  \r\nYou can set a JobOverride just once for a queue.  \r\n\r\nA usage scenario is: when some urls with special suffix or parameters navigate to the same page,\r\nyou can modify the job key to some special and unique id taken from the url with a JobOverride. After \r\nthat, jobs with duplicate keys will be filtered out.  \r\n\r\nActually, sub task type OnStart/OnTime is also managed by queue whose name just likes OnStart_ClassName_MethodName \r\nor OnTime_ClassName_MethodName, so you can set a JobOverride to it.   \r\n[JobOverride example](https://github.com/xiyuan-fengyu/ppspider_example/blob/master/src/jobOverride/App.ts)    \r\n\r\n### @Serializable @Transient\r\n```\r\nexport function Serializable(config?: SerializableConfig) { ... }\r\nexport function Transient() { ... }\r\n```\r\n@Serializable is used to mark a class, then the class info will keep during serializing and deserializing.\r\nOtherwise, the class info will lose when serializing.   \r\n    \r\n@Transient is used to mark a field which will be ignored when serializing and deserializing.\r\nWarn: static field will not be serialized.   \r\nThese two are mainly used to save running status. You can use @Transient to ignore fields which are not \r\nrelated with running status, then the output file will be smaller in size.  \r\n[example](https://github.com/xiyuan-fengyu/ppspider/blob/master/src/test/component/SerializeTest.ts)    \r\n\r\n\r\n### @RequestMapping\r\n```\r\nexport function RequestMapping(url: string, method: \"\" | \"GET\" | \"POST\" = \"\") {}\r\n```\r\n\r\n@RequestMapping is used to declare the HTTP rest interface, providing the ability to dynamically add tasks remotely. \r\nReturning the crawl results requires self-implementation (such as asynchronous url callbacks).\r\n[RequestMapping example](https://github.com/xiyuan-fengyu/ppspider_example/blob/master/src/requestMapping/App.ts)    \r\n\r\n\r\n### @Bean @Autowired\r\n仿造 java spring @Bean @Autowired 的实现，提供实例依赖注入的功能  \r\n[example](https://github.com/xiyuan-fengyu/ppspider/blob/master/src/test/component/BeanTest.ts)  \r\n\r\n### @DataUi @DataUiRequest\r\nYou can define you own tab page in UI(http://localhost:webPort) by this which can extend support for data visualization and user interaction  \r\nYou should import the DataUiClass in @Launcher appConfig.dataUis        \r\n\r\nThere is a built-in DataUi DbHelperUi which can support db search        \r\n  \r\n[example 1 DataUi basic usage](https://github.com/xiyuan-fengyu/ppspider/blob/master/src/test/dataUi/test.ts)  \r\n![nedbHelper.png](https://i.loli.net/2019/04/04/5ca5c313d92c4.png)  \r\n![dataUiTest1.png](https://i.loli.net/2019/04/04/5ca5c380b5c04.png)  \r\n![dataUiTest2.png](https://i.loli.net/2019/04/04/5ca5c3d152c72.png)  \r\n  \r\n[example 2 Add Dynamic Job On UI](https://github.com/xiyuan-fengyu/ppspider_example/blob/master/src/dataUi/App.ts)  \r\n![动态任务.png](https://i.loli.net/2019/04/04/5ca5c060b5462.png)  \r\n  \r\n[example 3 Web Page Screenshot](https://github.com/xiyuan-fengyu/ppspider_example/blob/master/src/dataUi/ScreenshotApp.ts)  \r\nLong web page screenshot is also supported     \r\n![网页截图.png](https://i.loli.net/2019/04/04/5ca5c172afff3.png)\r\n\r\n## PuppeteerUtil\r\n### PuppeteerUtil.defaultViewPort\r\nset page's view port to 1920 * 1080  \r\n\r\n### PuppeteerUtil.addJquery\r\ninject jquery to page, jquery will be invalid after page refresh or navigate, so you should call it after page load.  \r\n\r\n### PuppeteerUtil.jsonp\r\nparse json in jsonp string  \r\n\r\n### PuppeteerUtil.setImgLoad\r\nenable/disable image load \r\n\r\n### PuppeteerUtil.onResponse\r\nlisten response with special url, max listen num is supported\r\n\r\n### PuppeteerUtil.onceResponse\r\nlisten response with special url just once\r\n\r\n### PuppeteerUtil.downloadImg\r\ndownload image with special css selector\r\n\r\n### PuppeteerUtil.links\r\nget all expected urls \r\n\r\n### PuppeteerUtil.count\r\ncount doms with special css selector\r\n\r\n### PuppeteerUtil.specifyIdByJquery\r\nFind dom nodes by jQuery(selector) and specify random id if not existed，\r\nfinally return the id array.    \r\nA usage scenario is:   \r\nIn puppeteer, all methods of Page to find doms by css selector finally call \r\ndocument.querySelector / document.querySelectorAll which not support some \r\nspecial css selectors, howerver jQuery supports. Such as: \"#someId a:eq(0)\", \"#someId a:contains('next')\".   \r\nSo we can call specifyIdByJquery to specify id to the dom node and keep the special id returned, \r\nthen call Page's method with the special id.  \r\n\r\n### PuppeteerUtil.scrollToBottom\r\nscroll to bottom  \r\n\r\n### PuppeteerUtil.parseCookies\r\nParse cookie string to SetCookie Array，than set coookie through page.setCookie(...cookieArr)      \r\nHow to get cookie string?   \r\nopen interested url in chrome-> press F12 to open devtools -> Application panel -> Storage:Cookies:<SomeUrl> -> cookie detail in the left panel -> choose all by mouse，press Ctrl+c to copy all  \r\nYou will get something similar to the following  \r\n```\r\nPHPSESSID\tifmn12345678\tsm.ms\t/\tN/A\t35\t\t\t\t\r\ncid\tsasdasdada\t.sm.ms\t/\t2037-12-31T23:55:55.900Z\t27\t\t\t\r\n```\r\n\r\n### PuppeteerUtil.useProxy\r\nSet dynamic proxy for a single page  \r\n\r\n### PuppeteerUtil example\r\n[PuppeteerUtil example](https://github.com/xiyuan-fengyu/ppspider_example/tree/master/src/puppeteerUtil)  \r\n[Single Page Proxy](https://github.com/xiyuan-fengyu/ppspider/blob/master/src/test/component/ProxyTest.ts)   \r\n\r\n## NetworkTracing  \r\nRecode all requests during page opening [NetworkTracing example](https://github.com/xiyuan-fengyu/ppspider_example/blob/master/src/dataUi/NetworkTracingTest.ts)\r\n\r\n## Database\r\nNedb is supported by NedbDao.  \r\nMongodb is supported by MongodbDao.  \r\nYou can set the \"dbUrl\" in @Launcher parameters, then use appInfo.db to visist db. All metheds defined in src/common/db/DbDao.  \r\nNedb is a server-less database, no need to install the server end, the data will be persisted to the local file. Url format: nedb://nedbDirectoryPath. When the amount of data is large, the data query speed is slow, and it will take a lot of time to load data each time you restart the application, so use it only if the data is small.            \r\nMongodb needs to install the mongo server. The url format: mongodb://username:password@host:port/dbName. It is recommended to save a large amount of data.  \r\n\r\nAfter the application is started, a job collection is automatically created to save the job info during execution.  \r\n\r\n[database example](https://github.com/xiyuan-fengyu/ppspider_example/tree/master/src/db)\r\n\r\n## logger\r\nUse logger.debug, logger.info, logger.warn or logger.error to print log.  \r\nThose functions are defined in src/common/util/logger.ts.  \r\nThe output logs contain extra info: timestamp, log level, source file position.  \r\n```\r\nlogger.debugValid && logger.debug(\"test debug\");\r\nlogger.info(\"test info\");\r\nlogger.warn(\"test warn\");\r\nlogger.error(\"test error\");\r\n```\r\n\r\n# Debug\r\nsimple typescript/js code can be debugged in IDEA  \r\n\r\nThe inject js code can be debugged in Chromium. When building the PuppeteerWorkerFactory instance, set headless = false, devtools = true to open Chromium devtools panel.  \r\n[Inject js debug example](https://github.com/xiyuan-fengyu/ppspider_example/tree/master/src/debug)   \r\n```\r\nimport {Launcher, PuppeteerWorkerFactory} from \"ppspider\";\r\nimport {TestTask} from \"./tasks/TestTask\";\r\n\r\n@Launcher({\r\n    workplace: __dirname + \"/workplace\",\r\n    tasks: [\r\n        TestTask\r\n    ],\r\n    workerFactorys: [\r\n        new PuppeteerWorkerFactory({\r\n            headless: false,\r\n            devtools: true\r\n        })\r\n    ]\r\n})\r\nclass App {\r\n\r\n}\r\n```\r\n\r\n<html>\r\n    <p>\r\n    Add <span style=\"color: #ff490d; font-weight: bold\">debugger;</span> where you want  to debug\r\n    </p>\r\n</html>\r\n\r\n```\r\nimport {Job, OnStart, PuppeteerWorkerFactory} from \"ppspider\";\r\nimport {Page} from \"puppeteer\";\r\n\r\nexport class TestTask {\r\n\r\n    @OnStart({\r\n        urls: \"http://www.baidu.com\",\r\n        workerFactory: PuppeteerWorkerFactory\r\n    })\r\n    async index(page: Page, job: Job) {\r\n        await page.goto(job.url());\r\n        const title = await page.evaluate(() => {\r\n           debugger;\r\n           const title = document.title;\r\n           console.log(title);\r\n           return title;\r\n        });\r\n        console.log(title);\r\n    }\r\n\r\n}\r\n```\r\n\r\nIn addition, when developing DataUi, you can debug it in browser  \r\n![DataUiDebug.png](https://i.loli.net/2019/04/04/5ca5ca3417d49.png)  \r\n\r\n# Related Information \r\n## jQuery\r\nhttp://www.runoob.com/jquery/jquery-syntax.html  \r\n\r\n## puppeteer\r\nhttps://github.com/GoogleChrome/puppeteer/blob/master/docs/api.md  \r\n\r\n## nedb\r\nhttps://github.com/louischatriot/nedb  \r\n\r\n## mongodb\r\nhttps://docs.mongodb.com/manual/reference/method/js-collection/  \r\n\r\n## Angular  \r\nhttps://angular.io/  \r\n\r\n## G2  \r\nhttps://antv.alipay.com/zh-cn/g2/3.x/demo/index.html  \r\nG2 integrated in web ui for data visualization in DataUi    \r\n\r\n## bootstrap\r\nhttps://v3.bootcss.com/css/  \r\nThe web ui integrates bootstrap and jquery which make it easy to use the bootstrap and jquery to \r\nwrite the ui interface directly in DataUi.      \r\n\r\n# WebUI\r\nopen http://localhost:9000 in browser  \r\n\r\nQueue panel: view and control app status  \r\n![Queue Help](https://s1.ax1x.com/2018/06/13/COcgTs.png)  \r\n\r\nJob panel: search jobs and view details  \r\n![ppspiderJobs.en.png](https://i.loli.net/2018/08/29/5b862f27e2809.png)\r\n\r\n# Question\r\n1. When running an app in idea under debug mode after a long time, the application may get stucked\r\n    on a code line just like a breakpoint stop. It is due to low memory, just add a node \r\n    paramter \"--max-old-space-size=8192\" to solve it.\r\n    This situation has often appeared in previous versions, mainly due to nedb write/read process or serialization/deserialization process of QueueManager.  \r\n  In the new version (v2.1.2), it has been optimized.  \r\n\r\n2. When using the v2.2.0+ version, the workerFactory property is removed from @OnStart, @OnTime, @FromQueue. If you want to use the puppeteer page to crawl the website,\r\n  You can import the Page class via \r\n    ```\r\n    import {Page} from \"ppspider\";\r\n    ```\r\n    and then declare a page: Page parameter in the parameter list of the callback function. If use\r\n  Import {Page} from \"puppeteer\" to import Page, the imported Page is just an interface, which cannot be determined at runtime by reflect-metadata,\r\n  and the page instance will not be injected successfully. This error is checked during startup.  \r\n\r\n\r\n# Update Note  \r\n2020-12-07 v2.2.4-preview.1607350101966\r\n1. Modify puppeteer's default userDataDir to prevent generating excessive temporary folders when puppeteer crashes unexpectedly  \r\n2. Add worker info in QueueManager_JobExecuted event    \r\n3. rewrite EventBus to await EventBus.emit   \r\n\r\n2020-04-07 v2.2.3  \r\n1. fix bug: in case of cross-domain, page.frames may not find some iframes.        \r\n2. optimize PuppeteerUtil.dragJigsaw implementation to improve accuracy.    \r\n\r\n2019-09-04 v2.2.3-preview.1578363288631\r\n1. fix bug in job interruption    \r\n\r\n2019-09-04 v2.2.3-preview.1577332807380   \r\n1. fix bug: job is no longer retried after being interrupted on UI interface    \r\n2. add maxTry parameter for task and queue configuration, support always try when maxTry is less than 0    \r\n3. add defaultDatas parameter for task and queue configuration as the default value for job.datas    \r\n4. add the operation of switching the running state of the queue on UI interface  \r\n5. add the operation to edit timeout/maxTry/defaultDatas paramters on UI interface       \r\n\r\n \r\n2019-09-04 v2.2.3-preview.1574909694087   \r\n1. OnStart can be configured to use BloonFilter(default, will not re-run after saving status and restart) or NoFilter(will re-run after saving status and restart)    \r\n2. fix a bug in db search by page  \r\n3. add a new decorator called OnEvent, used to watch system event, there is only one use presently [OnEvent Example](https://github.com/xiyuan-fengyu/ppspider/blob/master/src/test/component/OnEventTest.ts)     \r\n\r\n2019-09-04 v2.2.3-preview.1569208986875  \r\n1. fix bug: null pointer error in src/common/db/MongodbDao.ts#remove     \r\n2. add a new parameter to transfer the parent job info for JobOverride callback method    \r\n3. ignore classes which are not marked with @Serializable during the serialization process    \r\n4. fix bug: match with RegExp.toString    \r\n5. Add SocksProxyAgent support in RequestUtil    \r\n\r\n2019-07-31 v2.2.2-preview\r\n1. @Bean @Autowired bug fixed, support type identification for @Autowired   \r\n2. Add new method RequestUtil.linesToHeaders to parse header-lines; add headerLines property to the parameter named options of\r\n    RequestUtil.simple, add an optional parameter handler to watch the response    \r\n3. Add cookies automatically when using PuppeteerUtil.useProxy to proxy requests  \r\n4. Add async function support for Page.evaluate, evaluateOnNewDocument, evaluateHandle, $eval, $$eval       \r\n5. Page import fixed  \r\n6. Add UserAgents util to get random user-agent    \r\n7. Add regexp support for AddToQueue/FromQueue name([example](https://github.com/xiyuan-fengyu/ppspider/blob/master/src/test/component/AddToRegexQueue.ts))     \r\n8. Set Page default viewport as 1920 * 1080, set navigator.webdriver=false      \r\n9. Add a new function PuppeteerUtil.drag to drag bar     \r\n10. Add a new PuppeteerUtil.triggerAndWaitRequest to trigger and watch a request  \r\n11. Add a new PuppeteerUtil.triggerAndWaitResponse to trigger a request and watch the response    \r\n12. Provides solutions for slider verification  \r\n    Drag from left to right [PuppeteerUtil.dragBar](https://github.com/xiyuan-fengyu/ppspider/blob/master/src/test/component/DragBarTest.ts)    \r\n    Drag to the right place to complete the puzzle [PuppeteerUtil.dragJigsaw](https://github.com/xiyuan-fengyu/ppspider/blob/master/src/test/component/DragJigsawTest1.ts)  \r\n    \r\n2019-06-22 v2.2.1\r\n1. Rewrite the way to inject the worker instance through the reflection mechanism provided by typescript and reflect-metadata \r\n   during calling method decorated by @OnStart, @OnTime, @FromQueue.  \r\n   The workerFactory property of @OnStart, @OnTime, @FromQueue is removed. The freamwork check the parameter types of the\r\n   decorated method to determine whether the job parameter needs to be passed, whether the worker instance needs to be \r\n   passed (if true, which worker type is the correct one). The order and number of parameters are no longer fixed.  \r\n       \r\n   But there are also restrictions, in the parameters, at most one with the Job type, and at most one with the worker type which has the corresponding WorkerFactory definition (only Page is currently provided).\r\n   Be careful that the class Page is provided in the ppspider package, not the interface Page defined in @types/puppeteer.\r\n    \r\n   Because of this change, some code needs to be upgraded. You need to remove the workerFactory property in @OnStart, @OnTime, @FromQueue. \r\n   If you want to use page: Page in the method decorated by @OnStart, @OnTime, @FromQueue, you need to import {Page} from \"ppspider\" instead of \"puppeteer\", \r\n   other parameters except job: Job should be removed. The order and name of the parameters can be defined freely.\r\n   If the job: Job is not used in the method, you can also remove this parameter.\r\n   \r\n2. Fixed a bug: @AddToQueue does not work without @OnStart / @OnTime / @FromQueue.  \r\n3. Add deployment scheme based on docker  \r\n\r\n2019-06-13 v2.1.11\r\n1. fix the once listener bug in PuppeteerWorkerFactory.overrideMultiRequestListenersLogic  \r\n2. add Buffer type to the parameter content in FileUtil.write  \r\n3. in process of QueueManager.loadFromCache, fix the lastExeTime of queue  \r\n4. change the dependencies of ui: bootstrap(3.4.1), g2(@antv/g2, @antv/data-set)  \r\n5. define window.__awaiter in ui, to support async and await in DataUi    \r\n6. define window.loadScript in ui, make it easy to load third-party script in DataUi    \r\n7. JobOverride supports async callback methods; change the timing that JobOverride calls callback method.  \r\n\r\n2019-06-06 v2.1.10\r\n1. Override Add/Remove/Query request listener of Page to ensure that a page has only one request listener(theOnlyRequestListener).  \r\n    The user-added request listener will be called via theOnlyRequestListener.  \r\n    Whether to call request.continue is no longer confusing.  \r\n2. Override the process of AddToQueue to add the method result to queues, so that Filter supports asynchronous check.    \r\n3. Rewrite the proxy process of PuppeteerUtil.useProxy by request.    \r\n4. The description of fail / failed is added to the UI interface. The number of failed in the queue shows two numbers: \r\n    the number of failed tries, and the number of tasks that still fail after the maximum number of tries.    \r\n\r\n2019-06-03 v2.1.9\r\n1. Fix bug: app stoped if exception occurred during request proxy in PuppeteerUtil.useProxy     \r\n\r\n2019-06-02 v2.1.8\r\n1. Add new method: PuppeteerUtil.useProxy, to support single page proxy      \r\n2. update puppeteer version to 1.17.0      \r\n\r\n2019-05-28 v2.1.6\r\n1. Fix a wrong ref of URL model in MongodbDao    \r\n2. Fix a bug to parse date in PuppeteerUtil.parseCookie      \r\n\r\n2019-05-24 v2.1.3\r\n1. On Job panel of ui interface, change \"createTime\" to text input, accurate to milliseconds  \r\n2. Fix bug during deleting job.  \r\n3. Rewrite the method to set parallel by cron expressions, then the parallel will be setted immediately after the application launch.    \r\n\r\n2019-05-21 v2.1.2\r\n1. Rewrite the serialization and deserialization process to solve the problem of large object serialization failure.    \r\n2. Delete DefaultJob, change interface Job to class Job, and the methods are changed to corresponding fields. This change causes historical QueueCache data to be incompatible.    \r\n3. Override the process of loading and saving Nedb to support reading and writing large amounts of data.    \r\n4. Rewrite NedbDao, provide new mongodb support: MongodbDao. They two are compatible with reading and writing data. Users can directly use @Launcher dbUrl to configure the database, and operate the database through appInfo.db.  \r\n\r\n2019-05-09 v2.0.5  \r\n1. Change cron lib: later -> cron  \r\n2. Update the logic to calculate the next execution time of OnTime Job  \r\n\r\n2019-05-08 v2.0.4\r\n1. Upgrade puppeteer: v1.15.0  \r\n2. Rewrite the serialization and deserialization process to solve the problem of large object serialization failure  \r\n    Due to this change, if you need to use the old queueCache.json which saved the running state, you can upgrade this file as following:  \r\n    Import UpgradeQueueCacheTask at \"@Launcher tasks\",   \r\n    Rename the old queueCache.json to queueCache_old.json and put it in the workplace directory,    \r\n    Start the app and the queueCache.txt will be generated in the workplace directory,    \r\n    Remove UpgradeQueueCacheTask at \"@Launcher tasks\".   \r\n       \r\n2019-04-29 v2.0.3\r\n1. When the ui interface switches tab pages, the previous tab page will not be destroyed.  \r\n2. fix bug： PuppeteerUtil.links can't find urls when passing Regex parameter.  \r\n3. fix bug： Nedb uses string concatenation to build new data content during the process of compressing data.\r\n    Memory overflow occurs when the amount of data is large.  \r\n\r\n2019-04-29 v2.0.2\r\n1. Output colorful logs using ansi-colors   \r\n\r\n2019-04-22 v2.0.1\r\n1. add RequestUtil, Encapsulate request as a promise style call    \r\n2. Modify the declaration of NedbHelperUi.defaultSearchExp to avoid error reporting during ts compilation  \r\n\r\n2019-04-04 v2.0.0\r\n1. Multiple task threads of the same queue in the QueueManager no longer share a single wait interval    \r\n2. The QueueManager can forcibly interrupt the execution of a running job (the UI Job panel provides an interactive button)  \r\n    By code  \r\n    ```\r\n    appInfo.eventBus.emit(Events.QueueManager_InterruptJob, JOB_ID, \"your interrupt reason\");\r\n    ```\r\n3. Status can be saved when ppspider is running    \r\n4. Added @Bean @Autowired decorator to provide dependency injection programming  \r\n5. Added @DataUi @DataUiRequest decorator to provide custom UI tab page, user can customize data visualization page, interactive tool    \r\n\r\n2019-01-28 v0.1.22\r\n1. Automatically clear jobs marked as filtered.\r\n2. Add job (status: Fail | Success) to queue by clicking button on the Job UI . \r\n\r\n2018-12-24 v0.1.21\r\n1. Add timeout to task configuration, default 300000ms  \r\n2. Add logs to job during task execution to analysis execution time and failure reasons  \r\n\r\n2018-12-10 v0.1.20\r\n1. Fix a bug: duplicate instances of the same user defined Task are created    \r\n\r\n2018-11-19 v0.1.19\r\n1. Fix a bug: the logger always print error as '{}'.   \r\n2. You can select multiple items when the condition has a list of options on the UI interface.    \r\n3. Update puppeteer version to 0.10.0.  \r\n\r\n2018-09-19 v0.1.18\r\n1. Change the reference address of the exported class in index.ts to the original path, \r\n    so that the user can locate the source code location in the editor quickly.   \r\n2. Print job detail when an error occurred.  \r\n3. The number of job failures increases after all attempts fail.  \r\n4. The parameter list of several methods declared in the logger to print log is changed to an indefinite parameter list. \r\n    The format parameter is no longer accepted. The indefinite parameter list is used as the message list, and the messages are automatically divided by '\\n';\r\n    The logger automatically converts obj to string using JSON.stringify(obj, null, 4).\r\n5. Add a new property named \"exeIntervalJitter\" to OnStart, OnTime, FromQueue, it makes a random jitter in a range to the execution interval(exeInterval).\r\n    default: exeIntervalJitter = exeInterval * 0.25  \r\n6. Add a new property named \"running\" to OnStart, OnTime, FromQueue to control the queue running status, default is true.\r\n    Change the running status like following: \r\n    ```\r\n    mainMessager.emit(MainMessagerEvent.QueueManager_QueueToggle_queueName_running, queueNameRegex: string, running: boolean)\r\n    ```\r\n7. The nedb related code in JobManager is rewritten with NedbDao  \r\n8. Add a decorator @RequestMapping to declare the HTTP rest interface, providing the ability to dynamically add jobs remotely. \r\n    Returning the crawl results requires self-implementation (such as asynchronous url callbacks).  \r\n\r\n2018-08-24 v0.1.17  \r\n1. In job detail modal, add support to recursively load the parent job detail, \r\n    add target=\"_blank\" to all 'a' elements to open a new tab when clicked  \r\n2. The push mode of spider system info is changed from periodic to event driven and delayed       \r\n3. Update puppeteer version to 1.7.0    \r\n4. Add NoneWorkerFactory whose init action is not required, it is used when puppeteer is not required  \r\n5. Complement the SSS of logger datetime with 0  \r\n6. The job with empty url is accepted now  \r\n\r\n2018-07-31 v0.1.16  \r\n1. Fix bug: no effect after setting maxParallelConfig=0  \r\n2. Update puppeteer version to 1.6.1-next.1533003082302 to solve the bug which causes loss of response in version 1.6.1 of puppeteer  \r\n\r\n2018-07-30 v0.1.15  \r\n1. Change the implement of PuppeteerUtil.addJquery  \r\n    Change the inject way of jQuery because Page.addScriptTag is not supported \r\n    by some website   \r\n2. Fix bug: PuppeteerWorkerFactory.exPage compute a wrong position of js executing error   \r\n3. Fix bug: The CronUtil.next may generate a next execute time which equals to the last job   \r\n\r\n2018-07-27 v0.1.14  \r\n1. Add support to logger level check  \r\n    Add support to change logger config  \r\n    Logger config can be set in @launcher  \r\n2. Change the parameter of DefaultJob.datas to optional  \r\n3. Enhance the page created by PuppeteerWorkerFactory, methods such as\r\n    $eval, $$eval, evaluate, evaluateOnNewDocument, evaluateHandle are improved,\r\n    when the inject js executes with error, it will print the detail and position \r\n    of error\r\n4. Change the implement of serialize    \r\n5. Add comments to source code  \r\n6. Update puppeteer version   \r\n\r\n2018-07-24 v0.1.13  \r\n1. Import source-map-support, add logger to print log with source code position\r\n\r\n2018-07-23 v0.1.12  \r\n1. Add @Transient Decorator to ignore field when serialization  \r\n\r\n2018-07-19 v0.1.11  \r\n1. Set the max wait time to 60 secondes when spider system shutdown,    \r\n    those jobs which are not complete will become fail once and add to queue\r\n    to try again  \r\n2. Fix bug: img url match is incorrect  \r\n\r\n2018-07-16 v0.1.8    \r\n1. Implement a serialization util to solve the circular reference question\r\n","readmeFilename":"README.en.md","description":"web spider, support puppeteer, cheerio and so on, include task-queue and dispatcher","homepage":"http://github.com/xiyuan-fengyu/ppspider","keywords":["spider","crawler","puppeteer","cheerio","headless","chromium","nedb","angular","task-queue","task-scheduling"],"license":"MIT"}