We have a Node.js library called html-metadata here: https://github.com/wikimedia/html-metadata/
We received a pull request[1] a while ago from a volunteer and there were some issues with the pull request (such as null values getting added to an object as the result of the function) but the original submitter never followed up. Fix this issue and resubmit the pull request.