{"_id":"xpath-html","_rev":"10-a990580a6448a427c8c7bd4d741c07b3","name":"xpath-html","dist-tags":{"latest":"1.0.3"},"versions":{"0.0.1":{"name":"xpath-html","version":"0.0.1","description":"Easily use XPath to locate any element in an HTML DOM page","main":"src/index.js","author":{"name":"Hieu Van"},"license":"MIT","dependencies":{"parse5":"6.0.0","xmldom":"0.3.0","xmlserializer":"0.6.1","xpath":"0.0.27"},"devDependencies":{"jest":"25.5.4"},"_id":"xpath-html@0.0.1","_nodeVersion":"13.3.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-ZkZ648LxbTm1gp+Dn8QAygh92OyW0zm2PzLA4KWDdDr6rvbUN6P/Be5hNg15641OtUTyiR3ke7FQ86asEPyy2w==","shasum":"25cd7199b0afc61e9dc009e67fbc38cdf126b613","tarball":"https://registry.npmjs.org/xpath-html/-/xpath-html-0.0.1.tgz","fileCount":3,"unpackedSize":862,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJerZHCCRA9TVsSAnZWagAAu+YQAJkjvKj+hy1ZmPVpl++g\n14q7Ox/xI5Kk1BlzdTm3T6FpLVUJWJmQDOJabpapSnE+sjeAzIhqXsi3xa9x\nai3XqYzGhctw5eDRGa8ULaWCM2S0nfn/nAQZ/fYsrq1ypB01jwve2t3AhPuO\nvNz8kjlyOJIdw+nhBEaviWbH6/gx9HPit8UQNVyKi4hwNRb4VQFI+0ncbBzG\nhBaSaJ40dlmAgoA5u3cP7vDmNCAoRVLNkV/2tpzavq0hdRWV7V+keKtMA5oV\nywS++xPn+uxab8yJh6SZbNxS44KgMwGctxIavFfRneoyfvspI5m8fJLY68jk\nPrvNTdEkohFUvBIGlaFU3U23XjUd0Ml5ZAj0Ob68y+w4qPgnEBDW9NvYZ/Rr\nKrr6mjH715OarJYL1P8naql6GsQYvmCAA9lI4vz6KH7wuDtOfWEHEqkxGtEo\nc2sAmT/luFTInuZkKrhTseRJM3iPVIthIU9KgvycKDip8seiCFUI2d0vZVE0\nZnJ0DmP+3cX4Mr52iYsAuKzTwx42OpysstiNSgZA8/yVv1a4VUs4OfoJB44b\neGM2GPrcH7jkzazjpsNdLXbbZnruAHSY5yjUWmVPzv8tHGaBGZJ7aXsIbco/\nTV4ehifLZL4gBg7GEs63QhgD77Cw0l5XpATOTOkRHrWhptmP5px1wiy/D0h3\nr3BZ\r\n=WvT3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDNUBV1GhaKo6VE1bAezgTg7ehRM8fj98sY+U7MtLmAsAIgI27AwzqJG4h2AKfD1RF5p6OjB+O8kxi4aZChwIfcrtY="}]},"maintainers":[{"name":"hieu.van","email":"hieuvanphu91@gmail.com"}],"_npmUser":{"name":"hieu.van","email":"hieuvanphu91@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/xpath-html_0.0.1_1588433346530_0.4612515559304051"},"_hasShrinkwrap":false},"0.0.2":{"name":"xpath-html","version":"0.0.2","description":"Easily use XPath to locate any element in an HTML DOM page","main":"src/index.js","author":{"name":"Hieu Van"},"license":"MIT","dependencies":{"parse5":"6.0.0","xmldom":"0.3.0","xmlserializer":"0.6.1","xpath":"0.0.27"},"devDependencies":{"jest":"25.5.4"},"_id":"xpath-html@0.0.2","_nodeVersion":"13.3.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-LXPjJGOGQ7SNU/r3uJ59mg6ZiVEI9TrIHBpD1qvvq1wITYojE9rKIqWc0bvEkow1G4y09cibldp/qluMgp1g8g==","shasum":"273aa4420b74a7d96cc0582247a7df548e1895df","tarball":"https://registry.npmjs.org/xpath-html/-/xpath-html-0.0.2.tgz","fileCount":6,"unpackedSize":2532,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeraFwCRA9TVsSAnZWagAAYZoQAJG2cwLMfz27CWmhTx7l\nEJULXMwC8713l0hH7nbkSEDfOPpsZc4pDwKpQ5I1NyqY+i7JoZjvHlWiI7T5\n5Ub+yCJWE3aZQoAQ0MkaeXHgH7fgdpAyFIhA7Qut3rvdSQ4VRVlQNjhqq4cA\nYAZfqfJprLqKsOjyfH5kf+kkZAwiKmB9GBodYnwctwqbiYY/t8ZhfwgZ4PAt\ntszz4fw/VRKF5FeniTzoKP1C43gzpTYqOvhvrQpIaXPYVpO//Q9eST/1/oR4\ne2wBh+WGnhi3j3UpavdfhvpnhiROnxDKUw7U1JN7axmQUDi5k05539wjX4uZ\nihHJIWx649z5I6DSvsyHmjKJfZeiuZ07Vd0Lihogl6l2dhcjssy0pQ7YXpji\nl3ozwMESXkRUWIgVS5nitG/R13nW02BVjnIOaHLA7jlssl1ri5zCho306cU6\nIRL8awSndN3iyq0Pg684Yto1loYI8GR30SHXYq0FdFtR+GsfV5dICcybolVs\nCyq1d0Rds1JotYTN1dbcajG5NXtTzH7juFsKuGCZTAQVhBNESNyDeHBu+t34\n92alis995GJi2Tpb+k71lBZa87OzlIq5dU29jglRYnH18Vd+cZUxjUw9dMgj\nMAqKYNhd74EGip1Ul5K0PsPz51P5U+pHqPgr36eStpiQg38ewJQJtBh7wgHO\nW3xo\r\n=TxbE\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDpdSoRCjBplP0s/6Yk90PCaz4D56Qu3rdFogu9g8S1yAiEAtT2gSuxecVpe/9Ryx2fD7rIoSk2MW60gQy5Hkfm4uLU="}]},"maintainers":[{"name":"hieu.van","email":"hieuvanphu91@gmail.com"}],"_npmUser":{"name":"hieu.van","email":"hieuvanphu91@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/xpath-html_0.0.2_1588437360233_0.840605627540886"},"_hasShrinkwrap":false},"0.0.3":{"name":"xpath-html","version":"0.0.3","description":"Easily use XPath to locate any element in an HTML DOM page","main":"src/index.js","author":{"name":"Harrison","url":"Hieu"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/hieuvp/xpath-html.git"},"homepage":"https://github.com/hieuvp/xpath-html#readme","keywords":["xpath-html","xpath","html","dom"],"dependencies":{"parse5":"6.0.0","xmldom":"0.3.0","xmlserializer":"0.6.1","xpath":"0.0.27"},"devDependencies":{"jest":"25.5.4"},"bugs":{"url":"https://github.com/hieuvp/xpath-html/issues"},"_id":"xpath-html@0.0.3","_nodeVersion":"13.3.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-IeaBjsJ5KW1E5gN4rhaaip6Z0mV9Lge1a6Xk2katoHV/k7zH7EE8nv3TfRH9ioE92Gq3/gLGZpWNgjn133YA6w==","shasum":"c47ffd906f601a5dc14b1d4568eb74860760fcd6","tarball":"https://registry.npmjs.org/xpath-html/-/xpath-html-0.0.3.tgz","fileCount":4,"unpackedSize":1948,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJerlpzCRA9TVsSAnZWagAAAjAP/izpzNrjLC6rbAn+CONb\nfA4XL9/8hXn9ANVvk/dkHIGn1idlHTl2eFBoddB8HmrWJ3Je22sHKOwraHCK\nJ1tgqUYoy0AaFupF5znkOcpz/+ippDG6gYcUQnypHisDOEBhSY4bmZrzhM+/\n16cpLT/Bto90EapplaUSNDwSRQoe8VV3Me8zF3V/v+I7pJjqPjj+kzDaZeoU\nlfPbEIyxUtCjZkFJeUCILOd2kYXjx2xthUSQ/czQ5Xe+YA98NO/RwWbi8uRv\ncjGNE5xwWRW1fOimDbnk+WjjS1ktzx86igcJ4AIP3HBa65GKNhWDkwLA/FSl\nh/hr5P9uXbyIC2qIKXTA5uzd3qtlyWF7Myv4QD4Sze9xSZAJ76oEOzk/ktlA\nYXRPB9/DZP0dpcBUl+Z0zJDK92FNh42ztS/Zc+lTEGZ/ohmovfsOUThkGvVn\ntKYhrTJE57B/MZw+aV/f82gfzvueft9d/1BixQ4ZLQAp55Kal+K/1WXrsXlK\n0VOqfFRoLd/vCLw2t30Oqdh9SdOeyg0xpDAfQK4HCKqxEKQONZUUr4KJyvQE\n+FCQXG9caztTuQw3qIAhvaBEADOhHkFDlJEp0/iFxW3LHZmno0bHoTkCgjo8\nSziHGmPLMPUry9QEAXB0p4cisq/52J4mnzhuEUhoTFfbhMYy2Jtk/xqUj4hh\nMNZD\r\n=VPFo\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQChDGRXPxZqKhgpHnXhEmn/L101kHM51ygPDF8LK0R2pQIhAOfBaHrIiLpTPfy6tidj2cn9majd0vUrZ+TR/nyvtUd2"}]},"maintainers":[{"name":"hieu.van","email":"hieuvanphu91@gmail.com"}],"_npmUser":{"name":"hieu.van","email":"hieuvanphu91@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/xpath-html_0.0.3_1588484722538_0.9886039099922246"},"_hasShrinkwrap":false},"0.0.6":{"name":"xpath-html","version":"0.0.6","description":"Easily use XPath to locate any element in an HTML DOM page","main":"src/index.js","author":{"name":"Harrison","url":"Hieu"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/hieuvp/xpath-html.git"},"homepage":"https://github.com/hieuvp/xpath-html#readme","keywords":["xpath-html","xpath","html","dom"],"dependencies":{"lodash.get":"4.4.2","parse5":"6.0.0","xmldom":"0.3.0","xmlserializer":"0.6.1","xpath":"0.0.27"},"devDependencies":{"jest":"25.5.4"},"gitHead":"2a46ee0a726a0abfa26a91ecb70c671db7178d16","bugs":{"url":"https://github.com/hieuvp/xpath-html/issues"},"_id":"xpath-html@0.0.6","_nodeVersion":"12.16.3","_npmVersion":"6.14.4","dist":{"integrity":"sha512-/i22apH2yDlgOsNeyChomnkjzJdObYEzIVKNzjJmJCp6m+unxEIpunBGDXswhswpfwDGjx6LTTOkF4ld3fLWZA==","shasum":"0ce3821f593df3fe668839789ff57410e559401c","tarball":"https://registry.npmjs.org/xpath-html/-/xpath-html-0.0.6.tgz","fileCount":4,"unpackedSize":1975,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJer6miCRA9TVsSAnZWagAAMbsP/Rov9QHQ0SyKkTPtz85z\nG+ito8aJpvuKCRHyFsgCuuJf/ykWRwFAEGkDWQtZCvDuFh66mHYC8LRHSJTt\nvF/CSwpdcA4DxLE8Whi5B57GsQXUBh12W2S+iPGQP/k2YN6IhTz5Zly94ldH\nvuxLUgEYJoyoguFCz3buNFhM9wXcToDy/L/f7Rj1Btxf1phpTYVl0XUCT0zQ\nJVUmTYr826hEl26Ejs/jsRurMySkeAtsV+nvsmOxrKTXVlq/jQKVcQ5ThbW+\nu9t1lvSt4Wh6sxe3eW8eIN3b4b0vxeTlDOtZMxamy4Or+lD9/jhpuwjoaHFB\ndAw0cdcoqO2o8WYMitIsomrCFThD7Y8behkSJqnBVH5v0KeFKimkqHxq3lgA\nc11BcIdnmQOp7a8auwbUfVB8Tz9DF/rtF5hzlvNyQNwzuOlf59VonAKqKVDP\nZMisJxf38rvxZrL9IscFsIL8xG74bEabaFM4XTwE4D1TIvpsxxOCpPoYe93v\ndmAlDFGoDTitS+u72eYTIBEvwhhOQ7fHRoRzs896eT33J4QabTXzSqKkndyV\nKIT/ktByf+tXUmRp1g/0rkz4O0wrUc0kOaw0IPHU0k6EwUTt6TzlLzDF2M/X\nHk5yqE7SjfRKu0ZlzY2wWrHYR7DRFnK1FbYsvCIe9BEIl9KMcCEAdyD3J1E4\ncc1B\r\n=QyU3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDiQcPB+PczzqYlpkCsxGa+4mGaCBXyKUE03WgiJk6zIAIhALmL51s8d7Y+e0FLRXOeO4G2D/kNzqDawAWRh+a3R7sG"}]},"maintainers":[{"name":"hieu.van","email":"hieuvanphu91@gmail.com"}],"_npmUser":{"name":"hieu.van","email":"hieuvanphu91@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/xpath-html_0.0.6_1588570529740_0.8171197225549731"},"_hasShrinkwrap":false},"0.1.0":{"name":"xpath-html","version":"0.1.0","description":"Easily use XPath to locate any element in an HTML DOM page","main":"src/index.js","author":{"name":"Harrison","url":"Hieu"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/hieuvp/xpath-html.git"},"homepage":"https://github.com/hieuvp/xpath-html#readme","keywords":["xpath-html","xpath","html","dom"],"dependencies":{"lodash.get":"4.4.2","parse5":"6.0.0","xmldom":"0.3.0","xmlserializer":"0.6.1","xpath":"0.0.27"},"devDependencies":{"jest":"25.5.4"},"gitHead":"412926a7e03d7f9325244247a72b58480b74d8fe","bugs":{"url":"https://github.com/hieuvp/xpath-html/issues"},"_id":"xpath-html@0.1.0","_nodeVersion":"12.16.3","_npmVersion":"6.14.4","dist":{"integrity":"sha512-CrejHBFFL9asAMaG4No3gnIF2tq0Xkn4c+ioExWN/Yk1kQR/dpk1mPxowwKZcjNndv9fZa+KaBzsRrgMAhbr1g==","shasum":"67b4a90b8933e2abecd24376284d4023ec2e1a10","tarball":"https://registry.npmjs.org/xpath-html/-/xpath-html-0.1.0.tgz","fileCount":4,"unpackedSize":1975,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJer6/RCRA9TVsSAnZWagAAS24P/1oTYxcd2gPiQ8RosLgd\nZ10qwK+6igS3100w7nJIJ3zunTLRUISjFHzKw28aaQRBn4v4+TxR8MuV6pR4\nVsjgOr+T2xwrIvT+qXzFrs6BZdAfdGd1HICu1RPbxVzpIF+uQ6GaK7NEC+Uw\necu0EaK+u8caJshSd35tmayhh3beX8pUDUFyEau6MsMbhomuNdVjgaxu5TwF\neQ7mDwD3sS0AZ1w8ppzQeXUKoPCe4IR2HcThm3SiqBrNalinjU0xR+7PZED7\nnkf10ReN/oidvZdXkEuaGndllQWJME4/1a6V77VX3QDQKJdcf+A8ICddM9dl\nUhO4Pr2oDiNIzABs2K35/pBE6eA4GlrRvsTK6JlCCL+qqGgvWZEfHQGGmLQL\ntwDGcYlsKOpfyTVS6Yj5R2ZgoNpCWbulwnUsL4R5dK3Wrz2ni0SQ/AkOYT/i\nWwRJRhX2pr7VshKY95tgoHiUIwrY9bm9HyeCpgvF7A2qEMOaVxJ9L/TVPCqO\nIf8RjZtaXe3CtyTc66Hk+c18M7QeYSkF83eyoDwdwcxnN/9e6UMWO02zWrv4\nM1qU3fcTaI6tOFBo0KMM4q1S39pgwvxbuO6yV5ZoTX7wdR9svybiZbWiCNYp\nWHgWHYGNLQn8DSOxdzbmoIQZqk6gJAZ4V83L3V6wRcbl76ryBAJHMej3ohuc\ntPNw\r\n=mOMu\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD9c1Nz+wJG53AE7NQRmb29z2ZaSQVbJcLXneY5PkIuTQIhANleYMbGudb893NZItnmzAHzGt97FuD7RyjXkCahc5It"}]},"maintainers":[{"name":"hieu.van","email":"hieuvanphu91@gmail.com"}],"_npmUser":{"name":"hieu.van","email":"hieuvanphu91@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/xpath-html_0.1.0_1588572112900_0.7259935051986737"},"_hasShrinkwrap":false},"0.1.1":{"name":"xpath-html","version":"0.1.1","description":"Easily use XPath to locate any element in an HTML DOM page","main":"src/index.js","author":{"name":"Harrison","url":"Hieu"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/hieuvp/xpath-html.git"},"homepage":"https://github.com/hieuvp/xpath-html#readme","keywords":["xpath-html","xpath","html","dom"],"dependencies":{"lodash.get":"4.4.2","parse5":"6.0.0","xmldom":"0.3.0","xmlserializer":"0.6.1","xpath":"0.0.27"},"devDependencies":{"jest":"25.5.4"},"bugs":{"url":"https://github.com/hieuvp/xpath-html/issues"},"_id":"xpath-html@0.1.1","_nodeVersion":"13.3.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-eTsOmv2NmVvlUlGezDLZpAF73t49v+Ux1ExKE5yJ9SCL9CGxdEb2yR0miw78xDXhoqC7sz20eQVARn1qDKzusQ==","shasum":"48f2a89f94d20562c16ad2928c51ec51ba66a8e4","tarball":"https://registry.npmjs.org/xpath-html/-/xpath-html-0.1.1.tgz","fileCount":6,"unpackedSize":17568,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJesBONCRA9TVsSAnZWagAAvvUP/15WSW5rXOAXgmfnWpQL\nFPtXf0JAX6EnXOgTgYpA3bSPSg9Y4tTmcXqYu3oFT5RWv+7ZGMSpCQUcILz/\nHEF0cExFq1pudE6/l4oe9X8t1Ir/sEl6syIDS5QJ+VnKmtsA8DEWnzipqHG1\nwBoQWTK1abUPKVkeHxe8hIee6NMNOsxV45utSJ2nS6f460ZEqnixD2bClXCd\nsLKGhRVMGVcqoRAi96v8A48svkjKn+EtRkMMvGGif6oukcO5Mvg1Rv9ZvNqD\nJugOit0iRF0NgY7D7IZhO3ZMTU0bl3q7fH3FjHLX3NhuHJLAahitH4kVeE1e\n+nz3V1ltJ0KvtW/+JNK7ALadd1KAy6YyhfaLZTBOOc2cDr/VXaVJ2cEW282b\nzsXDxeB7Uu/ibYHLTgdGioSOm4xzyaZeEAe5AxzO1XoWUUz/f1x0XgAMSiP8\nn6gfYiTU7ueGHE9thBRH4p8xLJxDifGt3n7nzLfFB+VnT2wQ3O36Qj+x6hvp\nPaUyxA8v7FWAYmb5YwDyvUELWpiErPA+la3m04ks6hYS5NzECiqIp5L8Z41A\nxegHOxIcldHfz4FoE6ZaAYeI9XIm0BFxGrBZx7twXGewyp83RqCpzY3D4qKH\n7giMY4TvZTwyyq0tNLPdB5S3/j94dXwbdBKtLE/6tPtJi70rYQ2NYrdyRJ1s\nWV/X\r\n=MPoV\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC80+wsjt/AiPmQrQWZ5QVUNPnTPdwPZYJewWXyKesOMAIhALuzElw1jh4Jgsc5BGFoqiwP0YI9Z9XUnyJY/CLkxWDd"}]},"maintainers":[{"name":"hieu.van","email":"hieuvanphu91@gmail.com"}],"_npmUser":{"name":"hieu.van","email":"hieuvanphu91@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/xpath-html_0.1.1_1588597644916_0.9750410270767687"},"_hasShrinkwrap":false},"1.0.0":{"name":"xpath-html","version":"1.0.0","description":"Easily use XPath to locate any element in an HTML DOM page","main":"src/index.js","author":{"name":"Harrison","url":"Hieu"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/hieuvp/xpath-html.git"},"homepage":"https://github.com/hieuvp/xpath-html#readme","keywords":["xpath-html","xpath","html","dom"],"dependencies":{"lodash.get":"4.4.2","parse5":"6.0.0","xmldom":"0.3.0","xmlserializer":"0.6.1","xpath":"0.0.27"},"devDependencies":{"jest":"25.5.4"},"gitHead":"f6385853099a59e349759a7e01efa9588a119822","bugs":{"url":"https://github.com/hieuvp/xpath-html/issues"},"_id":"xpath-html@1.0.0","_nodeVersion":"12.16.3","_npmVersion":"6.14.4","dist":{"integrity":"sha512-8KlHsB1lVHNGL6VbUviVZxM8TtaQ5YxlDZAdQdQDXtYbb8lJTjt5gLkOvkkAuxPKceri9bAlw5TIpIrrmv05Fw==","shasum":"57a0e900f7595d51affb6caa8b4cb9a6ff022f63","tarball":"https://registry.npmjs.org/xpath-html/-/xpath-html-1.0.0.tgz","fileCount":6,"unpackedSize":18366,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJesOsACRA9TVsSAnZWagAAf4IP+QG3ceosvOPMwtDZhctZ\nu32N2mOlksMYLz2ccortT+d+850/kHrBKlQ/KouMwzfwckWAZgzYn6VHJrS2\nCOV3JDwt6zYLPLbGChQFVKzbxDaRrMqVT8xeJRQnrtgtzXp3yrbmXjIhAd23\nZclLz9c4zz3suV8FlYNc8uEEDMD3eF9HAGeCCLZFEdVrG5gx8BS2ck1MEnYj\neRYEmIlRHpiC1Vk3xN//CYTobsUeihqNihBAU6Wj+soQ/mjS9xxLcRCRtnWh\nhVpEnqT7Wwl5sI12MaQ9cFrkK+n73jtavGeYYOwvEzKHKpfAVHuN7cW+6Q5J\nliCAFQuKQJ3vv9R3hwSypb0vphFQgq6H1OMMs3RoKDV1OawP4JHlgJOKHiiO\nS4DstCXmRDiO4ZFlxMT8CQONTfKIXzoHZns5qioeBfrod9zrN7ZH1vA2r84D\nGuxr0U3ocmd6FXiqLsVymxhJl/SSMvrj0IiYBABe+qawcD/jA9I9o8bwQI7A\nP2+B8WzF2UzTKAflkeZZZqWVzad6HR0re9ABOO2iS/kdYb7BjxWnrMWm/wTy\nhMy6pAfO3SiQaEJHjP6VLBs4Qhn0UVivsue+Yg++toc6ZtiSKh7+cAsbyWEe\nx54tXoyaYLu8G4CDaFKn9OkXb2oCvsYzBCm8wbr9XH++HUBwt1xHqF4ngN6b\nYtH/\r\n=iufv\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH6bOT0o3Mk+a20oCpB9GtSfgkYvxfovPTFgbMn2SHUeAiAu94CaBSUgSAHm7hfvzOpAsTw3cnEKnjyF5c4/BmG3mA=="}]},"maintainers":[{"name":"hieu.van","email":"hieuvanphu91@gmail.com"}],"_npmUser":{"name":"hieu.van","email":"hieuvanphu91@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/xpath-html_1.0.0_1588652799656_0.9798912880227062"},"_hasShrinkwrap":false},"1.0.1":{"name":"xpath-html","version":"1.0.1","description":"Easily use XPath to locate any element in an HTML DOM page","main":"src/index.js","author":{"name":"Harrison","url":"Hieu"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/hieuvp/xpath-html.git"},"homepage":"https://github.com/hieuvp/xpath-html#readme","keywords":["xpath-html","xpath","html","dom"],"dependencies":{"lodash.get":"4.4.2","parse5":"6.0.0","xmldom":"0.3.0","xmlserializer":"0.6.1","xpath":"0.0.27"},"devDependencies":{"jest":"26.0.1"},"gitHead":"a1431c9c8e5a2211e8aac77835c830b5660d7b74","bugs":{"url":"https://github.com/hieuvp/xpath-html/issues"},"_id":"xpath-html@1.0.1","_nodeVersion":"12.16.3","_npmVersion":"6.14.4","dist":{"integrity":"sha512-W30GT+UrPvg9Qpll2gdupQsC0GwtGvGJFoHXjLSxk3iEk1Bbv40cq8JXDw7j6X8iXsokz8ml/PntCmUBy3HK5w==","shasum":"ee50aa56ef2178badf9c50d14971856401c688d9","tarball":"https://registry.npmjs.org/xpath-html/-/xpath-html-1.0.1.tgz","fileCount":6,"unpackedSize":18501,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeshz4CRA9TVsSAnZWagAA2cgP/Ap3bV3okojSmOX88RxX\nm3r6YF+SiO/7ACDydHWkOrXF7pspnCxm9NqLrVZsCg8xmymQiLpPe//l4xIW\nNl6IeRVoqz+vkOJkstSanB8nWF+LsiEYMAqPB/O1HEEjx5eJqA7yRmj63+EI\np1rJSRmlT/zjRdLven6R97Bwgdpw3BNnLydwMU4apsf2N2n2TPN4KzQ+jjsS\n8v0i/rshqrBjUiDHFYgMlAAoepTM4USoiwZAoBJeSUYF3tI6P/E1m8p4Ag4X\nM6GB6D/ZX1imRNnkpH2Hcmph5PpuLPDpgsup1HyrIW8FKrQt3YNQhLWN3Pd2\nxOqiax7jB/MYubxqZu/TJCxvJUdlD3fC7Rumak5QzGRlnEuQ52Gg801cyGY3\nd9Iuub4c0ImrmN7f1NcVH4udBT01zdBpVr/RVT6fM2gynoXLeiIcMIrBqtGq\nEldFRxZSoCtM8NOhq0ruINRuKU341KopfTGnjI0UNQICGLJk93vom6l2f8Qj\n2nW7Es84NOgY6JlUY+NH4VtI9cvf7NuiC5UUolRNj2hsgB5616J93yfnG2CB\nwDQmN22fGy9vsTIXN6PortfBWddUQhP4sHDWXzibr0kv07OpKJLZPCPBv0hp\nKctEFquDZFShFQvcXATmKHj83My/Qs3+T0vMPJIe/aBAMZILiu2s3DUjhBwW\n7AEI\r\n=9Yl3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIArk3RSMjmM+aOfxnlk3Aj1kd8X7WdVNTASFFx25GpmPAiA3LfXlfNXaJFirTHfYj11bOpbLspzbvn/EcjtiDWT0tA=="}]},"maintainers":[{"name":"hieu.van","email":"hieuvanphu91@gmail.com"}],"_npmUser":{"name":"hieu.van","email":"hieuvanphu91@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/xpath-html_1.0.1_1588731128350_0.666848450442193"},"_hasShrinkwrap":false},"1.0.2":{"name":"xpath-html","version":"1.0.2","description":"Easily use XPath to locate any element in an HTML DOM page","main":"src/index.js","author":{"name":"Harrison","url":"Hieu"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/hieuvp/xpath-html.git"},"homepage":"https://github.com/hieuvp/xpath-html#readme","keywords":["xpath-html","xpath","html","dom"],"dependencies":{"lodash.get":"4.4.2","parse5":"6.0.0","xmldom":"0.3.0","xmlserializer":"0.6.1","xpath":"0.0.27"},"devDependencies":{"jest":"26.0.1"},"gitHead":"8b1c8e62a5c25745ee9786be834e93e118a2ee3d","bugs":{"url":"https://github.com/hieuvp/xpath-html/issues"},"_id":"xpath-html@1.0.2","_nodeVersion":"12.16.3","_npmVersion":"6.14.4","dist":{"integrity":"sha512-EuwNG90Gpm/azSf9CphUCnX3Mp6IEvIZpltM9sRITcqso3LX+1+AOOBH/Sqj0fh8Q0pArGGDkxaYDQ/hs+10IA==","shasum":"ae4e286ef144e8785119d46edfc1e0f66d54d55b","tarball":"https://registry.npmjs.org/xpath-html/-/xpath-html-1.0.2.tgz","fileCount":6,"unpackedSize":18510,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJesjf3CRA9TVsSAnZWagAAmd8QAIMAdVnLXp12i8itseuU\nXA6NWZbHJ0ranAjOYDP8RWDBJV1Xx7Ux4am5RzaQTRA5li5szmFstOeM+Aka\neM5dfug6Y6j3JpCxytK6ShSspshqZKZZOnrKLAs0zmqgM4siv9RHtDYQxnhd\nvbO7kq2I2q2hF1lKuh/9eGxuBcDpDSy6o7b2MZXsW1mtvPrNc96aaaD++DAg\nHjZscGpULsPa/RTJQrPOgA4e9RKNvWp3QyyDFrEL1+v5QqNgWT837l5qSVvn\ncoS5TrGPk80DdEQoppT0qgELXyBjhUI5gu0oaqrKdiCy51A0dn0CyH0F00e8\nh7NP/zzN/HP/4QdZ8v0f9Njt9qrstCNqrq7m3RvJSu9/maYeqtYpuZ93/XHs\nsA6JK56X40D6l+gMoV/qBsZ/O7MM0f+gX1Xe6xu5u7Gq6aLOYnaByM+tNlZJ\nChkhjb0HS8poNJevBZPYZjfT1/74nSXW6XZmqqPqKeiqNmuITvR/ZcfMPJyz\n24XVrNujJs4Ln389NuZH8dwt6ZI+tbfINzx/PkkPI4dMGqEMYwAHe7b5HOFD\nKiFRWoJG64osuUobj+2IE68EC8GVZIRqz3aDjKi38C0qtaOA+t/HscdIRg78\nsiOA7AX/WqRxOAw9zLR9tWSWpaEgQ0sOqvS1l/K6zaAU7ZXK91AnqecXKnAC\n/QGC\r\n=Dzd2\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIElMZ841pKDxoaZDqDY/a76x143xvSWyBioHVo0rK1aCAiEA7CKEyQTF2Vhv3H04BvgnrEjGc2IaarVYWhOMjfzxx7E="}]},"maintainers":[{"name":"hieu.van","email":"hieuvanphu91@gmail.com"}],"_npmUser":{"name":"hieu.van","email":"hieuvanphu91@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/xpath-html_1.0.2_1588738038679_0.06325498888156011"},"_hasShrinkwrap":false},"1.0.3":{"name":"xpath-html","version":"1.0.3","description":"Easily use XPath to locate any element in an HTML DOM page","main":"src/index.js","author":{"name":"Harrison","url":"Hieu"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/hieuvp/xpath-html.git"},"homepage":"https://github.com/hieuvp/xpath-html#readme","keywords":["xpath-html","xpath","html","dom"],"dependencies":{"lodash.get":"4.4.2","parse5":"6.0.0","xmldom":"0.6.0","xmlserializer":"0.6.1","xpath":"0.0.27"},"devDependencies":{"jest":"26.0.1"},"gitHead":"7d61130356ae7c85780775eec889e8edaea474d9","bugs":{"url":"https://github.com/hieuvp/xpath-html/issues"},"_id":"xpath-html@1.0.3","_nodeVersion":"12.22.10","_npmVersion":"6.14.16","dist":{"integrity":"sha512-UpzQll0ob0LL0sfp5eu8u7IyklLS78ieukjg8D8cefFs+psr1n92xkW4FxaXQydEDC1pm2s5yvdgLCCVfJTjhg==","shasum":"b1d0a9e24e3b250b77c970a2bf39bb11cad92cdf","tarball":"https://registry.npmjs.org/xpath-html/-/xpath-html-1.0.3.tgz","fileCount":6,"unpackedSize":18504,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiLbnlACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpxsg/+Js+qlVzc3kT1X0ZQu/wyyF8n19HB4elvol8i2TzyDlxdYxiC\r\nrqvcBWC5ti7FOhnjXgyINbGFqUxTOSRATd4V4Bygrl1/qXNJUjWmJpJ+Row9\r\nQU3DdcclYjqxg4RBt6kcS/ipw6AExcC+9X/5NTnZ1i2xAUZleCUkg1jnhEJ3\r\nNMeogkrIbHzdlKNyDHbAiHsa9SNfGU1SUBHpcj8w+Uf/T2GQDe/wnj4+uJ07\r\nR4NHTmvKATTEkiwpbSt8YPoeuBXtejOridUWzv8psmbuTd8nZlz9tZBj0Abl\r\nOcd+tR1toSUnemUFb/MnAN8tl0tqJ4WHCXAuRoq+mEkMAJslstW0LsFnbBU/\r\nPjfqvHMnCRUyggOTicrsbx2bd71PtkIh1RKFja1Eeq4yF4nAUg4Bt+q62KtJ\r\nptcYUlvZAH7bwMaGbP05/kXit3AsH/bWUAdOcdTsmYALSx/kxYi+Ktx4CIpH\r\nuZRX9PcVpdvrwdGeRvDq7yWg57Vav7MP27xCVPtBrlDpF4aLQOzch4lY4/Gc\r\ndLVjB+04yAkt97+Xor5yDWR5Whgyr2uWSOcw6RPgTN/W8UmewuUbh/Ys2uGb\r\nXYmiuu/x4hMUzCGM/7g+APStpNJfqTH6q6+1703L14yw99DQdhYtdLxJLsiP\r\nBHd8ikskpYxq1RTa1wl217KrNSVRboigH/8=\r\n=PaUc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDDnvg1cxDj27/i6cb7uibnQJBVsMwwibSPSHBG6UY01wIgZsHBeYGYHvI01CJOR09EcTZa8JeGEV/2iyKZF2jkKlM="}]},"_npmUser":{"name":"hieu.van","email":"hieuvanphu91@gmail.com"},"directories":{},"maintainers":[{"name":"hieu.van","email":"hieuvanphu91@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/xpath-html_1.0.3_1647163877374_0.30163121389353953"},"_hasShrinkwrap":false}},"time":{"created":"2020-05-02T15:29:06.530Z","0.0.1":"2020-05-02T15:29:06.640Z","modified":"2022-05-25T00:51:20.430Z","0.0.2":"2020-05-02T16:36:00.357Z","0.0.3":"2020-05-03T05:45:22.654Z","0.0.6":"2020-05-04T05:35:29.846Z","0.1.0":"2020-05-04T06:01:52.993Z","0.1.1":"2020-05-04T13:07:25.070Z","1.0.0":"2020-05-05T04:26:39.799Z","1.0.1":"2020-05-06T02:12:08.447Z","1.0.2":"2020-05-06T04:07:18.774Z","1.0.3":"2022-03-13T09:31:17.506Z"},"maintainers":[{"name":"hieu.van","email":"hieuvanphu91@gmail.com"}],"description":"Easily use XPath to locate any element in an HTML DOM page","author":{"name":"Harrison","url":"Hieu"},"license":"MIT","readme":"# XPath HTML\n\n[![CI](https://github.com/hieuvp/xpath-html/workflows/CI/badge.svg?branch=master)](https://github.com/hieuvp/xpath-html/actions?query=workflow%3ACI+branch%3Amaster)\n[![Release](https://github.com/hieuvp/xpath-html/workflows/release/badge.svg)](https://github.com/hieuvp/xpath-html/actions?query=workflow%3Arelease)\n[![NPM](https://img.shields.io/npm/v/xpath-html.svg)](https://www.npmjs.com/package/xpath-html)\n[![Downloads](https://img.shields.io/npm/dm/xpath-html.svg)](https://www.npmjs.com/package/xpath-html)\n\n<br />\n\n**XPath** stands for **XML Path Language**.<br />\nIt provides a flexible **non-XML syntax** to address (point to) different parts of an **XML document**.\n\n<br />\n\n> With the [**XPath HTML**](#xpath-html),\n> this will enable us to use such a powerful tool,\n> navigating through the **HTML DOM** by **XPath expression**.\n\n<br />\n\nIf you want to learn more about **XPath** and\nknow how to use different **XPath expression** for finding complex or dynamic elements,\ntake a visit to this concise tutorial\n[here](https://github.com/hieuvp/learning-automation-tools/blob/master/xpath/README.md).\n\n## Table of Contents\n\n<!-- START doctoc generated TOC please keep comment here to allow auto update -->\n<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->\n\n- [Installation](#installation)\n- [Usages](#usages)\n  - [Hello XPath from HTML World](#hello-xpath-from-html-world)\n  - [`fromPageSource(html).findElement(expression)`](#frompagesourcehtmlfindelementexpression)\n  - [`fromPageSource(html).findElements(expression)`](#frompagesourcehtmlfindelementsexpression)\n  - [`fromNode(xhtml).findElement(expression)`](#fromnodexhtmlfindelementexpression)\n  - [`fromNode(xhtml).findElements(expression)`](#fromnodexhtmlfindelementsexpression)\n  - [`node.getTagName()`](#nodegettagname)\n  - [`node.getText()`](#nodegettext)\n  - [`node.getAttribute(name)`](#nodegetattributename)\n- [Dependencies](#dependencies)\n- [License](#license)\n\n<!-- END doctoc generated TOC please keep comment here to allow auto update -->\n\n## Installation\n\n[`xpath-html`](https://www.npmjs.com/package/xpath-html) is available as a package on [NPM](https://www.npmjs.com/),\nopen up a **Terminal** and enter the following command:\n\n```shell script\nnpm install --save xpath-html\n```\n\n## Usages\n\n### Hello XPath from HTML World\n\n<!-- AUTO-GENERATED-CONTENT:START (CODE:src=examples/hello.js) -->\n<!-- The below code snippet is automatically added from examples/hello.js -->\n\n```js\nconst fs = require(\"fs\");\nconst xpath = require(\"xpath-html\");\n\n// Assuming you have an html file locally,\n// Here is the content that I scraped from www.shopback.sg\nconst html = fs.readFileSync(`${__dirname}/shopback.html`, \"utf8\");\n\n// Don't worry about the input much,\n// you are able to use the HTML response of an HTTP request,\n// as long as the argument is a string type, everything should be fine.\nconst node = xpath.fromPageSource(html).findElement(\"//*[contains(text(), 'with love')]\");\n\nconsole.log(`The matched tag name is \"${node.getTagName()}\"`);\nconsole.log(`Your full text is \"${node.getText()}\"`);\n```\n\n<!-- AUTO-GENERATED-CONTENT:END -->\n\n```shell script\n# A fast way to download .html file above\n$ curl https://www.shopback.sg -o shopback.html\n\n# Or from my GitHub examples\n$ curl -O https://raw.githubusercontent.com/hieuvp/xpath-html/master/examples/shopback.html\n```\n\nBang 💥 **Output** should be something looks like:\n\n<!-- AUTO-GENERATED-CONTENT:START (CODE:src=output/hello.txt) -->\n<!-- The below code snippet is automatically added from output/hello.txt -->\n\n```txt\nThe matched tag name is \"div\"\nYour full text is \"Made with love by\"\n```\n\n<!-- AUTO-GENERATED-CONTENT:END -->\n\n<br />\n\nIt is understandable, right? <br />\nNow, you can scroll down the APIs below and diving into details.\n\n<br />\n\n### `fromPageSource(html).findElement(expression)`\n\n> Locate an element on a page,\n> the returned node is a representation of the underlying DOM.\n\n**Arguments:**\n\n| Name         | Type     | Description                |\n| ------------ | -------- | -------------------------- |\n| `html`       | `string` | Input HTML page's source   |\n| `expression` | `string` | The given XPath expression |\n\n**Returns:** `Node`\n\n**Example**:\n\n<!-- AUTO-GENERATED-CONTENT:START (CODE:src=examples/fromPageSource.findElement.js) -->\n<!-- The below code snippet is automatically added from examples/fromPageSource.findElement.js -->\n\n```js\nconst fs = require(\"fs\");\nconst xpath = require(\"xpath-html\");\n\nconst html = fs.readFileSync(`${__dirname}/shopback.html`, \"utf8\");\nconst node = xpath.fromPageSource(html).findElement(\"//*[text()='Made with love by']\");\n\nconsole.log(node.toString());\n```\n\n<!-- AUTO-GENERATED-CONTENT:END -->\n\n**Result**:\n\n<!-- AUTO-GENERATED-CONTENT:START (CODE:src=output/fromPageSource.findElement.txt) -->\n<!-- The below code snippet is automatically added from output/fromPageSource.findElement.txt -->\n\n```txt\n<div xmlns=\"http://www.w3.org/1999/xhtml\">Made with love by</div>\n```\n\n<!-- AUTO-GENERATED-CONTENT:END -->\n\n<br />\n\n### `fromPageSource(html).findElements(expression)`\n\n> Search for multiple elements on a page.\n\n**Arguments:**\n\n| Name         | Type     | Description                |\n| ------------ | -------- | -------------------------- |\n| `html`       | `string` | Input HTML page's source   |\n| `expression` | `string` | The given XPath expression |\n\n**Returns:** `Array<Node>`\n\n**Example**:\n\n<!-- AUTO-GENERATED-CONTENT:START (CODE:src=examples/fromPageSource.findElements.js) -->\n<!-- The below code snippet is automatically added from examples/fromPageSource.findElements.js -->\n\n```js\nconst fs = require(\"fs\");\nconst xpath = require(\"xpath-html\");\n\nconst html = fs.readFileSync(`${__dirname}/shopback.html`, \"utf8\");\nconst nodes = xpath\n  .fromPageSource(html)\n  .findElements(\"//img[starts-with(@src, 'https://cloud.shopback.com')]\");\n\nconsole.log(\"Number of nodes found:\", nodes.length);\nconsole.log(\"nodes[0]:\", nodes[0].toString());\nconsole.log(\"nodes[1]:\", nodes[1].toString());\n```\n\n<!-- AUTO-GENERATED-CONTENT:END -->\n\n**Result**:\n\n<!-- AUTO-GENERATED-CONTENT:START (CODE:src=output/fromPageSource.findElements.txt) -->\n<!-- The below code snippet is automatically added from output/fromPageSource.findElements.txt -->\n\n```txt\nNumber of nodes found: 158\nnodes[0]: <img src=\"https://cloud.shopback.com/raw/upload/static/images/navbar/sb-logo.png\" xmlns=\"http://www.w3.org/1999/xhtml\"/>\nnodes[1]: <img src=\"https://cloud.shopback.com/raw/upload/static/images/navbar/desktop/icon-raf.svg\" xmlns=\"http://www.w3.org/1999/xhtml\"/>\n```\n\n<!-- AUTO-GENERATED-CONTENT:END -->\n\n<br />\n\n### `fromNode(xhtml).findElement(expression)`\n\n> Select an element against an XHTML format.<br />\n> Similar to [`fromPageSource(html).findElement(expression)`](#frompagesourcehtmlfindelementexpression),\n> but it is for a subset of an `html` page this time.\n\n**Arguments:**\n\n| Name         | Type               | Description                                                                           |\n| ------------ | ------------------ | ------------------------------------------------------------------------------------- |\n| `xhtml`      | `Node` or `string` | Either a **returned node** from a query<br />or an **xhtml string** with a good shape |\n| `expression` | `string`           | The given XPath expression                                                            |\n\n**Returns:** `Node`\n\n**Notes:**\n\n- The input `xhtml` must have a namespace of `xmlns=\"http://www.w3.org/1999/xhtml\"` <br />\n  e.g. `<div xmlns=\"http://www.w3.org/1999/xhtml\">Made with love by</div>`\n\n**Example**:\n\n<!-- AUTO-GENERATED-CONTENT:START (CODE:src=examples/fromNode.findElement.js) -->\n<!-- The below code snippet is automatically added from examples/fromNode.findElement.js -->\n\n```js\nconst fs = require(\"fs\");\nconst xpath = require(\"xpath-html\");\n\nconst html = fs.readFileSync(`${__dirname}/shopback.html`, \"utf8\");\nconst group = xpath.fromPageSource(html).findElement(\"//div[@class='ui-store-group']\");\n\nconst node = xpath.fromNode(group).findElement(\"//a[@href='/aliexpress']\");\n\nconsole.log(node.toString());\n```\n\n<!-- AUTO-GENERATED-CONTENT:END -->\n\n**Result**:\n\n<!-- AUTO-GENERATED-CONTENT:START (CODE:src=output/fromNode.findElement.txt) -->\n<!-- The below code snippet is automatically added from output/fromNode.findElement.txt -->\n\n```txt\n<a class=\"store-logo-wrapper\" href=\"/aliexpress\" title=\"AliExpress Coupons &amp; Promo Codes\" xmlns=\"http://www.w3.org/1999/xhtml\"><img class=\"store-logo\" src=\"https://cloud.shopback.com/t_sd_250_pad,f_auto,fl_lossy,q_auto/sg-store/49/49_logo_86958e96.png\" alt=\"AliExpress Coupons &amp; Promo Codes\"/></a>\n```\n\n<!-- AUTO-GENERATED-CONTENT:END -->\n\n<br />\n\n### `fromNode(xhtml).findElements(expression)`\n\n> Select multiple elements against an XHTML format.<br />\n> Same as [`fromPageSource(html).findElements(expression)`](#frompagesourcehtmlfindelementsexpression),\n> however it is being used for querying from a part of an `html`.\n\n**Arguments:**\n\n| Name         | Type               | Description                                                                           |\n| ------------ | ------------------ | ------------------------------------------------------------------------------------- |\n| `xhtml`      | `Node` or `string` | Either a **returned node** from a query<br />or an **xhtml string** with a good shape |\n| `expression` | `string`           | The given XPath expression                                                            |\n\n**Returns:** `Array<Node>`\n\n**Notes:**\n\n- The input `xhtml` must have a namespace of `xmlns=\"http://www.w3.org/1999/xhtml\"` <br />\n  e.g. `<div xmlns=\"http://www.w3.org/1999/xhtml\">Made with love by</div>`\n\n**Example**:\n\n<!-- AUTO-GENERATED-CONTENT:START (CODE:src=examples/fromNode.findElements.js) -->\n<!-- The below code snippet is automatically added from examples/fromNode.findElements.js -->\n\n```js\nconst fs = require(\"fs\");\nconst xpath = require(\"xpath-html\");\n\nconst html = fs.readFileSync(`${__dirname}/shopback.html`, \"utf8\");\nconst group = xpath.fromPageSource(html).findElement(\"//div[@class='ui-store-group']\");\n\nconst nodes = xpath.fromNode(group).findElements(\"//img[contains(@src,'shopily')]\");\n\nconsole.log(\"Number of nodes found:\", nodes.length);\nconsole.log(\"nodes[0]:\", nodes[0].toString());\nconsole.log(\"nodes[1]:\", nodes[1].toString());\n```\n\n<!-- AUTO-GENERATED-CONTENT:END -->\n\n**Result**:\n\n<!-- AUTO-GENERATED-CONTENT:START (CODE:src=output/fromNode.findElements.txt) -->\n<!-- The below code snippet is automatically added from output/fromNode.findElements.txt -->\n\n```txt\nNumber of nodes found: 2\nnodes[0]: <img class=\"store-logo\" src=\"https://shopily-sg.s3.amazonaws.com/uploads/stores/504/504_logo_200c4121.png\" alt=\"zChocolat Coupons &amp; Promo Codes\" xmlns=\"http://www.w3.org/1999/xhtml\"/>\nnodes[1]: <img class=\"store-logo\" src=\"https://shopily-sg.s3.amazonaws.com/uploads/stores/2498/2498_logo_81f0a24d.png\" alt=\"Bed Bath &amp; Beyond Coupons &amp; Promo Codes\" xmlns=\"http://www.w3.org/1999/xhtml\"/>\n```\n\n<!-- AUTO-GENERATED-CONTENT:END -->\n\n<br />\n\n### `node.getTagName()`\n\n> Retrieve the node's tag name.\n\n**Arguments:** None\n\n**Returns:** `string`\n\n**Example**:\n\n<!-- AUTO-GENERATED-CONTENT:START (CODE:src=examples/node.getTagName.js) -->\n<!-- The below code snippet is automatically added from examples/node.getTagName.js -->\n\n```js\nconst fs = require(\"fs\");\nconst xpath = require(\"xpath-html\");\n\nconst html = fs.readFileSync(`${__dirname}/shopback.html`, \"utf8\");\nconst node = xpath.fromPageSource(html).findElement(\"//*[text()='Made with love by']\");\n\nconsole.log(\"Single node's tag name:\", node.getTagName());\n\nconst nodes = xpath\n  .fromPageSource(html)\n  .findElements(\"//img[starts-with(@src, 'https://cloud.shopback.com')]\");\n\nconsole.log(\"First nodes[0] tag name:\", nodes[0].getTagName());\nconsole.log(\"Second nodes[1] tag name:\", nodes[1].getTagName());\n```\n\n<!-- AUTO-GENERATED-CONTENT:END -->\n\n**Result**:\n\n<!-- AUTO-GENERATED-CONTENT:START (CODE:src=output/node.getTagName.txt) -->\n<!-- The below code snippet is automatically added from output/node.getTagName.txt -->\n\n```txt\nSingle node's tag name: div\nFirst nodes[0] tag name: img\nSecond nodes[1] tag name: img\n```\n\n<!-- AUTO-GENERATED-CONTENT:END -->\n\n<br />\n\n### `node.getText()`\n\n> Get the visible **innerText** of the node.\n\n**Arguments:** None\n\n**Returns:** `string`\n\n**Example**:\n\n<!-- AUTO-GENERATED-CONTENT:START (CODE:src=examples/node.getText.js) -->\n<!-- The below code snippet is automatically added from examples/node.getText.js -->\n\n```js\nconst fs = require(\"fs\");\nconst xpath = require(\"xpath-html\");\n\nconst html = fs.readFileSync(`${__dirname}/shopback.html`, \"utf8\");\nconst node = xpath.fromPageSource(html).findElement(\"//*[text()='Made with love by']\");\n\nconsole.log(\"Text of the node:\", node.getText());\n\nconst nodes = xpath\n  .fromPageSource(html)\n  .findElements(\"//div[@id='home-page-container']//*[@class='title-text']\");\n\nconsole.log(\"Text of nodes[0]:\", nodes[0].getText());\nconsole.log(\"Text of nodes[1]:\", nodes[1].getText());\n```\n\n<!-- AUTO-GENERATED-CONTENT:END -->\n\n**Result**:\n\n<!-- AUTO-GENERATED-CONTENT:START (CODE:src=output/node.getText.txt) -->\n<!-- The below code snippet is automatically added from output/node.getText.txt -->\n\n```txt\nText of the node: Made with love by\nText of nodes[0]: Up to 10.0% Cash Rewards\nText of nodes[1]: Up to 7.0% Cashback\n```\n\n<!-- AUTO-GENERATED-CONTENT:END -->\n\n<br />\n\n### `node.getAttribute(name)`\n\n> Retrieve the current value of the given attribute of this node.\n\n**Arguments:**\n\n| Name   | Type     | Description                        |\n| ------ | -------- | ---------------------------------- |\n| `name` | `string` | The name of the attribute to query |\n\n**Returns:** `string`\n\n**Example**:\n\n<!-- AUTO-GENERATED-CONTENT:START (CODE:src=examples/node.getAttribute.js) -->\n<!-- The below code snippet is automatically added from examples/node.getAttribute.js -->\n\n```js\nconst fs = require(\"fs\");\nconst xpath = require(\"xpath-html\");\n\nconst html = fs.readFileSync(`${__dirname}/shopback.html`, \"utf8\");\nconst node = xpath.fromPageSource(html).findElement(\"//a[text()='View All Popular Stores']\");\n\nconsole.log(\"The href value:\", node.getAttribute(\"href\"));\n```\n\n<!-- AUTO-GENERATED-CONTENT:END -->\n\n**Result**:\n\n<!-- AUTO-GENERATED-CONTENT:START (CODE:src=output/node.getAttribute.txt) -->\n<!-- The below code snippet is automatically added from output/node.getAttribute.txt -->\n\n```txt\nThe href value: /all-stores\n```\n\n<!-- AUTO-GENERATED-CONTENT:END -->\n\n## Dependencies\n\nSpecial thanks to all contributors of these libraries\nwhich are the foundation of what `xpath-html` was built upon.\n\n1. [xpath](https://github.com/goto100/xpath)\n1. [xmldom](https://github.com/jindw/xmldom)\n1. [xmlserializer](https://github.com/cburgmer/xmlserializer)\n1. [parse5](https://github.com/inikulin/parse5)\n\n## License\n\nMIT\n\nMade with ❤ from [ShopBack](https://www.shopback.com/).\n","readmeFilename":"README.md","homepage":"https://github.com/hieuvp/xpath-html#readme","keywords":["xpath-html","xpath","html","dom"],"repository":{"type":"git","url":"git+https://github.com/hieuvp/xpath-html.git"},"bugs":{"url":"https://github.com/hieuvp/xpath-html/issues"}}