Skip to content

MnyaCat/pixiv_dart

Repository files navigation

pixiv.dart

pixivAPIをDart/Flutterで利用するためのパッケージです。

Features

TODO: List what your package can do. Maybe include images, gifs, or videos.

Getting started

Install

このパッケージは開発中であり、長期的なサポートを想定していないため、pub.devでは公開していません。そのため、パッケージを使用するためにはpubspec.yamldependenciesに以下の記述を追加する必要があります。

dependencies:
  pixiv_dart:
    git:
      url: https://github.com/MnyaCat/pixiv_dart
      ref: # バージョンを固定するコミットのハッシュ値を書いてください(例: 0ff847f)。

Retrieving Auth Token

pixivへログインするためには、OAuth認証のアクセストークンを取得する必要があります。
以下の手順に従って、アクセストークンを取得してください。

  1. oauth_flow.dartを実行します。
  2. 表示されたリンクをブラウザで開きます。
  3. DevToolsを開き(Google Chromeの場合はF12)、"Network(ネットワーク)"タブに移動します。
  4. "Preserve log(ログを保持)"を有効にし、"Filter"にcallback?を入力します。
  5. pixivへログインしてください。
  6. ログインすると、https://app-api.pixiv.net/web/v1/users/auth/pixiv/callback?state=...&code=...のようなリクエストが表示されます。codeパラメーターの値をコピーして、コンソールにペーストし、Enterを押してください。

アクセストークンの取得に成功すると、コンソールへ取得したトークンが出力されます。
アカウント情報をファイルに保存する場合は、引数--save-accountを付けて実行してください。カレントディレクトリ配下のuser_account.jsonに出力されます。
ここで取得したトークンを利用することで、アカウントにログインできます。誤ってインターネット上にアップロードしないように気をつけてください。

Usage

import 'package:http/http.dart' show Client;
import 'package:pixiv_dart/pixiv_dart.dart';

void main() async {
  final api =
      await ApiClient.loginWithRefreshToken('your refresh token', Client());

  // fetch illust detail
  final illust = await api.fetchIllustDetail(92210213);
  print('title: ${illust.title}');
}

LICENSE

Copyright (c) 2023 MnyaCat
Released under the MIT license
see LICENSE file

Releases

No releases published

Languages