メインコンテンツへスキップ

TypeScriptの使用

TypeScript を使用すると、メソッドやプロパティの自動補完、および型チェックが提供され、開発が容易になります:

typescript

スクレイパーの作成と編集には、Visual Studio Code エディタの使用を推奨します。

A-Parser 型ライブラリをインストールします:

cd files/
npm install a-parser-types

A-Parser は、TypeScript の基本設定ファイルが存在しない場合、自動的に作成します:

files/tsconfig.json
{
"compilerOptions": {
"target": "esnext",
"moduleResolution": "node",
"module": "commonjs",
"sourceMap": true,
"baseUrl": ".",
"paths": {
"*": ["node_modules/*", "../dist/nodejs/node_modules/*"]
}
},
"include": ["**/*.ts"]
}

スクレイパーファイルを作成します:

mkdir files/parsers/Awesome-Parser/
touch files/parsers/Awesome-Parser/Awesome-Parser.ts

開発を開始するには、このテンプレートを使用してください:

files/parsers/Awesome-Parser/Awesome-Parser.ts
import { BaseParser } from 'a-parser-types';

export class JS_Awesome_Parser extends BaseParser {
static defaultConf: typeof BaseParser.defaultConf = {
version: '0.0.1',
results: {
flat: [
['title', 'Title'],
],
arrays: {
}
},
results_format: "Title: $title\n",
};

static editableConf: typeof BaseParser.editableConf = [
];

async parse(set, results) {
...

return results;
}
}
注記

A-Parser は、スクレイパーの実行前に .ts ファイルを .js に自動的にコンパイルします。

API v1 との違い

  • ジェネレーターが async/await に置き換えられました
  • defaultConf および editableConf フィールドが static になりました
  • スクレイパークラスは BaseParser を継承する必要があります
  • TypeScript はオプションで使用可能ですが、利用可能なメソッドやパラメータの補完のために、デフォルトで使用することをお勧めします