naroujs
v0.1.2
Published
a japanese novel sns syosetu.com api wrapper
Downloads
15
Readme
naroujs
「小説家になろう」デベロッパー NodeJS/ブラウザー用 JavaScriptラッパー
インストール
| インストール | なろう小説API | なろう小説ランキングAPI | なろう殿堂入りAPI | なろう18禁小説API | |---|---|---|---|---|
NodeJS
npm install naroujs --save
import naroujs from 'naroujs';
naroujs().then(result => console.log(result));
GET送信にaxiosを使用します。
ブラウザ(Download)
<script src="https://npmcdn.com/naroujs/lib/index.browser.min.js"></script>
<script>
naroujs().then(result => console.log(result));
</script>
GET送信にfetch-jsonpを使用します(CORS回避のため)。
なろう小説API
| インストール | なろう小説API | なろう小説ランキングAPI | なろう殿堂入りAPI | なろう18禁小説API | |---|---|---|---|---|
naroujs(params)
->Promise<result>
URLパラメータをオブジェクトで第一引数に渡し、APIへリクエストを送ります。 結果はPromiseでオブジェクトを返します。内容として
- リクエストに使用した
uri
- リクエストに一致する全件数
allcount
- リクエストに一致する結果
items
を持ちます。
naroujs({lim: 1}).then(result => console.log(result)); // { // uri: 'http://api.syosetu.com/novelapi/api/?lim=1', // allcount: 396955, // items: // [ // { // title: '無職転生 - 異世界行ったら本気だす -', // ...
- リクエストに使用した
naroujs.pickup(params)
->Promise<result>
naroujs
と同じですが、params
のデフォルト値として{ ispickup: 1, order: 'hyoka', lim: 200 }
を持ちます。注意 小説家になろうのピックアップはispickupが1でさらに小説評価が高い順200件です。 小説家になろうのピックアップと同一結果を取得したい場合はispickupが1であるかを確認し、さらに総合評価で並べ替えその結果を200件取得する必要があります。
http://api.syosetu.com/novelapi/api/?ispickup=1&order=hyoka&lim=200 小説家になろうで使っている小説ピックアップの情報を取得するURLです。
パラメーターの詳細
gzip
とout
は現在指定できません。NodeJSではgzip=5,out=json
、ブラウザではout=jsonp
固定になります。
なろう小説ランキングAPI
| インストール | なろう小説API | なろう小説ランキングAPI | なろう殿堂入りAPI | なろう18禁小説API | |---|---|---|---|---|
naroujs.rank(params)
->Promise<result>
APIの基準URLを
http://api.syosetu.com/rank/rankget/
(なろう小説ランキングAPI )に変更して、リクエストを発行します。内容として- リクエストに使用した
uri
- リクエストに一致する結果
items
を持ちます。
naroujs.rank({rtype: '20130501-m'}).then(result => console.log(result)); // { // uri: 'http://api.syosetu.com/rank/rankget/?rtype=20130501-m&out=json&gzip=5', // items: // [ // { ncode: 'N7648BN', pt: 36092, rank: 1 }, // ...
- リクエストに使用した
パラメーターの詳細
gzip
とout
は現在指定できません。NodeJSではgzip=5,out=json
、ブラウザではout=jsonp
固定になります。
なろう殿堂入りAPI
| インストール | なろう小説API | なろう小説ランキングAPI | なろう殿堂入りAPI | なろう18禁小説API | |---|---|---|---|---|
naroujs.fame(params)
->Promise<result>
APIの基準URLを
http://api.syosetu.com/rank/rankin/
(なろう殿堂入りAPI )に変更して、リクエストを発行します。内容として- リクエストに使用した
uri
- リクエストに一致する結果
items
を持ちます。
naroujs.fame({ncode: 'n9669bk'}).then(result => console.log(result)); // { // uri: 'http://api.syosetu.com/rank/rankin/?ncode=n9669bk&out=json&gzip=5', // items: // [ // { pt: 623, rank: 11, rtype: '20130501-d' }, // ...
- リクエストに使用した
パラメーターの詳細
gzip
とout
は現在指定できません。NodeJSではgzip=5,out=json
、ブラウザではout=jsonp
固定になります。
なろう18禁小説API
| インストール | なろう小説API | なろう小説ランキングAPI | なろう殿堂入りAPI | なろう18禁小説API | |---|---|---|---|---|
naroujs.r18(params)
->Promise<result>
APIの基準URLを
http://api.syosetu.com/novel18api/api/
(なろう18禁小説API )に変更して、リクエストを発行します。naroujs.noc(params)
->Promise<result>
naroujs.r18
と同じですが、params
のデフォルト値として{nocgenre: 1}
を持ちます。 「ノクターンノベルズ(男性向け)」を検索対象とします。naroujs.mnlt(params)
->Promise<result>
naroujs.r18
と同じですが、params
のデフォルト値として{nocgenre: 2}
を持ちます。 「ムーンライトノベルズ(女性向け)」を検索対象とします。naroujs.bl(params)
->Promise<result>
naroujs.r18
と同じですが、params
のデフォルト値として{nocgenre: 3}
を持ちます。 「ムーンライトノベルズ(BL)」を検索対象とします。naroujs.mid(params)
->Promise<result>
naroujs.r18
と同じですが、params
のデフォルト値として{nocgenre: 4}
を持ちます。 「ミッドナイトノベルズ(大人向け)」を検索対象とします。
パラメーターの詳細
gzip
とout
は現在指定できません。NodeJSではgzip=5,out=json
、ブラウザではout=jsonp
固定になります。
ほか、参考文献
謝辞
このアプリケーションは非公式のもので、株式会社ヒナプロジェクトが提供しているものではありません。
関連するプロジェクト
開発環境
下記がグローバルインストールされていることが前提です。
- NodeJS v5.11.1
- Npm v3.8.6 (or pnpm)
git clone https://github.com/59naga/naroujs
cd naroujs
npm install
npm test