Research
Security News
Malicious npm Package Targets Solana Developers and Hijacks Funds
A malicious npm package targets Solana developers, rerouting funds in 2% of transactions to a hardcoded address.
table-scraper
Advanced tools
Easily scrape any website's html table data into an array of JavaScript objects.
Simple utility for scraping data from html tables on a given website into a list of javascript objects.
npm install --save table-scraper
Returns a promise that resolves to a list of tables found on the input website. HTML table rows are converted to javascript objects
For example: suppose the website at http://www.some-fake-url.com
consisted of the following:
<html>
<head>
</head>
<body>
<table>
<thead>
<tr><th>State</th><th>Capital City</th><th>Pop.<th></tr>
</thead>
<tbody>
<tr><td>Minnesota</td><td>Saint Paul</td><td>3</td></tr>
<tr><td>New York</td><td>Albany</td><td>Eight Million</td></tr>
</tbody>
</table>
</body>
</html>
The following code would result in the array displayed below:
var scraper = require('table-scraper');
scraper
.get('http://www.some-fake-url.com')
.then(function(tableData) {
/*
tableData ===
[
[
{ State: 'Minnesota', 'Capital City': 'Saint Paul', 'Pop.': '3' },
{ State: 'New York', 'Capital City': 'Albany', 'Pop.': 'Eight Million' }
]
]
*/
});
Important to note: the tableData
returned is a list of lists. So, if some-fake-url.com
contained three tables, the structure of the response would look like
[
[ /* list of data from the first table */ ],
[ /* list of data from the second table */ ],
[ /* list of data from the third table */ ]
]
If a table has NO headings (no <th>
elements), the object keys are simply the column index:
[
{'0': <first column data of first row>, '1': <second column data of first row>, .... }
]
Feedback/PRs welcome! Please include tests around any new functionality, and make sure existing tests pass:
npm test
The following node libraries make this utility super easy:
FAQs
Easily scrape any website's html table data into an array of JavaScript objects.
We found that table-scraper demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
A malicious npm package targets Solana developers, rerouting funds in 2% of transactions to a hardcoded address.
Security News
Research
Socket researchers have discovered malicious npm packages targeting crypto developers, stealing credentials and wallet data using spyware delivered through typosquats of popular cryptographic libraries.
Security News
Socket's package search now displays weekly downloads for npm packages, helping developers quickly assess popularity and make more informed decisions.