
Research
Security News
Malicious PyPI Package Exploits Deezer API for Coordinated Music Piracy
Socket researchers uncovered a malicious PyPI package exploiting Deezer’s API to enable coordinated music piracy through API abuse and C2 server control.
excel2json
Advanced tools
Can be converted to JSON format any Excel data.
example Excel data
A | B | C | D | |
---|---|---|---|---|
1 | {} | |||
2 | _id | obj.code | obj.value:number | |
3 | ||||
4 | first | one | 1 | |
5 | second | two | 2 | |
6 | ||||
converted to Object |
[
{
_id: 'first',
obj: {
code: 'one',
value: 1
}
},
{
_id: 'second',
obj: {
code: 'two',
value: 2
}
}
]
npm install excel2json
example sheet.xlsx
A | B | C | D | |
---|---|---|---|---|
1 | {name: 'Test'} | |||
2 | _id | obj.code | obj.value:number | |
3 | ||||
4 | first | one | 1 | |
5 | second | two | 2 | |
6 | ||||
Sheet1 |
var excel2json = require('excel2json');
var filename = './sheet.xlsx';
var sheets = [1];
excel2json.parse(filename, sheets, function(err, data) {
console.log(data);
// [{
// num: 1, // sheet number
// name: 'Sheet1', // sheet name
// option: { // option extend sheet option (ex: A1)
// name: 'Test'
// attr_line:
// data_line:
// ref_key: '_id',
// format: {
// A: { type: null, key: '_id', keys: [ '_id' ] },
// B: { type: null, key: 'obj.code', keys: [ 'obj', 'code' ] },
// C: { type: 'number', key: 'obj.value', keys: [ 'obj', 'value' ] }
// }
// },
// contents: [
// { _id: 'first', obj: { code: 'one', value: 1 } },
// { _id: 'second', obj: { code: 'two', value: 2 } }
// ]
// }]
excel2json.toJson(data, function(err, json) {
console.log(json);
// {
// Test: {
// first: {
// _id: 'first',
// obj: { code: 'one', value: 1 }
// },
// second: {
// _id: 'second',
// obj: { code: 'two', value: 2 }
// }
// }
// }
});
});
Setup options.
var excel2json = require('excel2json');
excel2json.setup({
option_cell: 'A1', // Cell with a custom sheet option. It is not yet used now. (default: 'A1'
attr_line: '2', // Line with a data attribute. (default: '2'
data_line: '4', // Line with a data. (default: '4'
ref_key: '_id' // ref key. (default: '_id'
logger: Logger // custom logger.
});
sheet option. setting with optionCell (default: 'A1'
name
type
key
attr_line
data_line
ref_key
Specify the key name.
Special character
#
Use when the array.$
Use when the split array.:number
or :num
Use when the parameters of type Number
.:boolean
or :bool
Use when the parameters of type Boolean
.:date
Use when the parameters of unix time.:index
Use when the array of array.An example of a complex format.
var excel2json = require('excel2json');
excel2json.parse('test.xlsx', [], function(err, sheetDatas) {
excel2json.toJson(sheetDatas, function(err, result) {
fs.writeFileSync('test.json', JSON.stringify(result, null, 4));
});
});
Run npm test
and npm run-script jshint
FAQs
excel2json
The npm package excel2json receives a total of 7 weekly downloads. As such, excel2json popularity was classified as not popular.
We found that excel2json 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
Socket researchers uncovered a malicious PyPI package exploiting Deezer’s API to enable coordinated music piracy through API abuse and C2 server control.
Research
The Socket Research Team discovered a malicious npm package, '@ton-wallet/create', stealing cryptocurrency wallet keys from developers and users in the TON ecosystem.
Security News
Newly introduced telemetry in devenv 1.4 sparked a backlash over privacy concerns, leading to the removal of its AI-powered feature after strong community pushback.