私立メロン高校パソコン部
14293878

pixivダウンローダAPI


2020年09月28日 02:59:00

pixivの画像を一括で保存するソフトです。
pixivの非公式APIを使ってます。
seleniumを使わないのでダウンロードが早くて軽いです。xpやvistaでも使えます。

1.検索キーワードに検出された画像、
ランキング画像、フォロー新着、特定ユーザーの画像、新着画像、
マイピク新着、人気タグ、特定ユーザーのブックマーク、自分のブックマークが落とせます。
2.イラスト単体、漫画単体、うごイラが落とせます。
urlをD&Dや貼り付けで入力もできる。
3. 複数urlを一括で落とすバッチ処理。
4.フォルダ名やファイル名を自由に設定できる機能。
5.画像のexifタグに書き込む機能
6. うごイラをGIFアニメやmp4に変換する機能。
7.自動的にダウンロード開始する機能、終了時に自動で閉じる機能。
タスクスケジューラーから起動できる。これにより定期的に自動でダウンロードができる。
起動時に引数を取得できるのでコマンドラインやbatファイルから落とせる。
8.ランキングは1日前に順番にさかのぼって落とせる。

pythonスクリプトをexe化したapi.exeだとうまくいかなかったので
exeでなくpythonスクリプトから取得するようにした。
なのでpythonをインストールして
pixivpyをインストールする必要があります。

pythonが入ってない場合はpythonをインストールしてパスを通す。
pipでpixivpyをインストール
pip install pixivpy --upgrade

2022/11/16
ver1.5.3

https://mega.nz/file/675nhYpa#x94_u_oymVb_Jg7m3t0ldzqn8aDV4LRGeG-F7SZNQeI

posted by 管理人
カテゴリー SNS画像ダウンローダ
view(13825)
コメント(728)


709.名前:名無し 2022年04月28日 05:56:00ID:a00178

イラスト単体は落とせるのですが、特定ユーザーの画像で落とせません。「tokenを取得できませんでした。」と表示されてしまいます。

refresh_tokenの取得は以下のやり方で行いました。
1.コマンドプロンプトでgallery-dl oauth:pixivと入力してエンター
2. ブラウザでpixivが開く。ログイン画面でF12キーを押す
3.右に英語がたくさん書かれたウィンドウが出てくるので、上部に表示された要素・コンソール・ソース・ネットワークなどのタブからネットワークをクリックし、その状態でログインする
5.表示された英語の文字列の中から 'callback?state=...'で始まるものを見つけてクリックする。出ない場合はF5キーで更新
6.表示された項目から
location: pixiv://account/login?code=英数字の羅列&via=login
を探し出し、英数字の羅列をコピー
7.コマンドプロンプトに戻って、コピーした英数字の羅列を貼ってエンター
pixivダウンローダAPIの設定の取得済みtoken欄とrefresh_token(入力)欄にもコピー


710.名前:名無し 2022年05月05日 11:27:00ID:a84550

ユーザーのブックマークを取得する際、ページ指定はできないのでしょうか?
www.pixiv.net/users/user_id/bookmarks/artworks?p=num
のように入力しましたが、ログを見た感じだと"?p=num"部分を無視して最新のものから取得しているように思えます。

重複dbの検証だけでトークンがタイムアウトしてしまうため、かなり昔のブックマークが取得できないのですが、何か方法はないでしょうか?


711.名前:名無し 2022年05月14日 08:15:00ID:624242

私も>>709と同様にイラストURLだとDLできますが、
ユーザーのURLだと「リモート サーバーがエラーを返しました: (400) 要求が不適切です」とでて、失敗します。

トークンを更新した方がいいのかなと思い、
"tokenの再取得"を押したのですが「tokenを取得します。」とだけ出て
取得できません。

お忙しいところ恐縮ですがよろしくお願いします。


712.名前:管理人 2022年05月15日 11:06:00ID:

>>711
>>709
>>704

ユーザーurlですが、
2022/5/15現在、確認しましたが、
問題なくダウンロードできてます。


713.名前:管理人 2022年05月15日 04:00:00ID:

>>710

残念ながらそれはできません。

このソフトではpixivの非公式APIを使ってるのですが、
pixivのAPIでユーザーのブックマークで途中のページから取得する機能は無いです。pixivのAPIでユーザーのブックマークは取得したページからMaxIDを取得して
次のページでMaxIDの引数を入れることで、
ページ移動してるので1ページ目から順番にしか落とせません。

途中のページから落としたいならpixivダウンローダNEXTを使ってください。
https://shimarisu.ie-t.net/pixiv_next.html




714.名前:管理人 2022年05月15日 04:05:00ID:

>>710
>重複dbの検証だけでトークンがタイムアウトしてしまうため、かなり昔のブックマークが取得できないのですが、

それはおそらくAPIに連続アクセスしてるからだと思います。
重複dbを使ってスルーすると、
ダウンロード作業時間が無くてすぐ次のAPIを取得して、
APIに連続アクセスしちゃうので、
apiのトークンが使えなくなっちゃうのではないかと思います。

waitを長くしてAPIに連続アクセスしないようにすればいいです。


715.名前:名無し 2022年05月21日 08:31:00ID:7a3a60

readmeの「6.そこから表示された項目の Headers の一番下にある code:英数字の羅列 を右クリックして Copy value を選択する」ができません。。
一番下は「user-agent」です。


716.名前:管理人 2022年05月22日 06:25:00ID:

>>715

コマンドプロンプトで gallery-dl oauth:pixiv と入力してエンター
ブラウザでpixivが開く。
ブラウザでpixivにログインするボタンを押す。
F12キーを押す。
「ネットワーク」をクリック。
文字列が出ない場合は「再読み込み」をクリック。

https://app-api.pixiv.net/web/v1/users/auth/pixiv/callback?state=4Kasdasb05XNFVGVnPeGNAAasdasdasdL4LpLSwGZMAASDasdasdasdAr&code=AAssasda89766sdasAAYcASSDAA343450
というurlを探して、
code=以下の
AAssasda89766sdasAAYcASSDAA343450
をコピーしてコマンドプロンプトに貼り付け。

一定時間以内にやらないとエラーが出るので、
素早くやってください。

上の説明文で使ったブラウザはFirefoxです。

(ここに書いたcodeの文字列はフェイクです。)


717.名前:名無し 2022年05月23日 11:23:00ID:fdeec7

>> 713
ありがとうございます。
wait時間を変えて何通りか試しましたが、やはり一定時間経過後にエラー(400)を返します。
掲示板の過去ログも見ましたが、やはり件数が多いと取得できないのでしょうか?


718.名前:管理人 2022年05月24日 12:12:00ID:

>>717
>やはり件数が多いと取得できないのでしょうか?

取得したいurlはどれですか?


719.名前:名無し 2022年05月30日 09:35:00ID:96f95b

>>716
ありがとうございます。

記載いただいた通りで試し、
refresh-tokenに貼り付けて実行しましたが
「tokenを取得します。
tokenを取得できませんでした。」
となり取得できません。

タグ検索でも作品のURLでもダメです。。


720.名前:名無し 2022年06月04日 02:56:00ID:1de784

整理してみました

refresh_tokenの取得歩法(Firefox)
1.コマンドプロンプトで gallery-dl oauth:pixiv と入力してエンター
2.ブラウザでpixivが開く
3.ログイン画面でF12キーを押し、その内の「ネットワーク」タブを開く
4.その状態でログイン
5.タブ内の「ファイル」列で 'callback?state=' で始まるものを見つけてクリック
6.右側ヘッダータブ内で code:英数字の羅列 を(右クリックして)コピー
7.コマンドプロンプトに戻って、コピーした英数字の羅列を貼ってエンター (ログイン後30秒以内?)
8.取得したrefresh_tokenをpixivダウンローダAPIの設定refresh_tokenに貼り付け


721.名前:名無し 2022年06月04日 03:04:00ID:1de784

gallery-dlやpixivpyの更新も忘れずに

pip install gallery-dl --upgrade
pip install pixivpy --upgrade


722.名前:名無し 2022年06月04日 03:08:00ID:1de784

>>720
一部修正

refresh_tokenの取得歩法(Firefox)
1.コマンドプロンプトで gallery-dl oauth:pixiv と入力してエンター
2.ブラウザでpixivが開く
3.ログイン画面でF12キーを押し、その内の「ネットワーク」タブを開く
4.その状態でログイン
5.タブ内の「ファイル」列で 'callback?state=' で始まるものを見つけてクリック
6.右側「ヘッダー」タブ内で「code: 英数字の羅列」の 英数字の羅列部分 のみを(右クリックして)コピー
7.コマンドプロンプトに戻って、コピーした英数字の羅列部分を貼ってエンター (ログイン後30秒以内?)
8.取得したrefresh_tokenをpixivダウンローダAPIの設定refresh_tokenに貼り付け


723.名前:名無し 2022年06月13日 05:36:00ID:9abcf2

リモート サーバーがエラーを返しました: (403) 使用不可能
25秒
終わりました。

キーワード検索するとこうなりダウンロードできないのですが、何か設定の問題があるのでしょうか?


724.名前:名無し 2022年07月18日 07:27:00ID:0ff0a4

検証してないので確実かは分かりませんが、
pixivダウンロードapiをバッチに書いて、それをタスクスケジューラから起動しようとすると「icon.icoがありません」が表示されて動きません。
普通にダブルクリックで起動はできます。
なにか足りないんですかね…。

windows11


725.名前:管理人 2022年07月18日 11:08:00ID:

>>724

タスクスケジューラーで使うには、操作の編集の開始(オプション)に
このソフトの実行ファイルがあるフォルダ(カレントディレクトリ)を指定してください。そうしないと、設定ファイルを読み込まないです。


726.名前:名無し 2022年07月20日 12:24:00ID:492935

>>725
無事動きました!
こんな簡単なところで躓いてたとは…。

ちなみにですが、windowsアカウントがサインインしてない状態でも、タスクスケジューラから動かすことは可能ですかね?
試してみればいいのはそうなんですけど(汗


727.名前:管理人 2022年07月20日 03:44:00ID:

>>726
>windowsアカウントがサインインしてない状態でも、タスクスケジューラから動かすことは可能ですかね?

知りません。
自分で確認してください。


728.名前:名無し 2022年07月23日 07:49:00ID:a57e07

>>727
こちらも動きました!
要らないPCなんでpixivダウンローダAPI用に調整して専用機にしますw


729.名前:管理人 2022年09月30日 05:25:00ID:

pixivダウンローダAPIを公開しました。
(ver1.5.2)

うごイラはVer1.5.1までは
DOSコマンドの文字数制限の為に
フレーム数が多い場合は、
最初のdelayだけを全てに適用してGIFアニメを生成してた。
つまり動きがおかしかった。

Ver1.5.2からフレーム数が多い場合は
番号を付けて分割して、 結合して生成するようにした。
分割して生成したGIFは自動削除します。
これにより正しい動きになります。

Ver1.5.1までのソフトで
「フレーム数が多いので最初のdelayのみで変換します]と出たうごイラを落とした人は動きがおかしいので
落とし直した方が良いで


730.名前:名無し 2022年10月02日 02:45:00ID:740367

更新ありがとうございます。

731.名前:管理人 2022年11月16日 02:32:00ID:

pixivダウンローダAPIを更新しました。
(ver1.5.3)

うごイラの結合コマンドのGIFのパスがダブルクォーテーションで囲ってなかったので
ダブルクォーテーションで囲った。


732.名前:名無し 2022年11月25日 11:37:00ID:77fcc7

tps://www.pixiv.net/artworks/102763787

注意

ここのうごイラがほとんど「GIFアニメが無いです。」が出て
gifも出来ません。

どういった対処法がありますでしょうか


733.名前:名無し 2022年12月01日 09:33:00ID:fd6778

作者ごとでダウンロードするためにカスタムファイル名にチェックしてダウンロードしておりますが複数ファイルが含まれる投稿を落とす際に(P0,P1,P2・・)投稿ごとに作者フォルダ下にサブフォルダが作成されてしまいます。
作者フォルダだけ作成というわけにはいかないでしょうか?
また、複数投稿者を連続してダウンロードしたいのですが方法はありますでしょうか?


734.名前:名無し 2022年12月02日 03:18:00ID:23e9ff

ver1.5.3
ユーザーURLで落ちてこない

tps://app-api.pixiv.net/v1/user/illusts?user_id=00000000&image_sizes=largeを取得します。
接続が切断されました: 受信時に予期しないエラーが発生しました。
231ミリ秒
終わりました。


735.名前:名無し 2022年12月02日 06:04:00ID:fd6778

>>734

同じエラー、メイン画面右上[takenの再取得]押してみたら再取得が
行われてダウンロードできるようになりました。
お試しください。


736.名前:734 2022年12月12日 07:45:00ID:cf34a0

>>735
動作しなかったがありがとう

原因としてはpixivpyの依存関係が壊れていた
cloudscraperとやらのバージョンが変だったので、
pipでpixivpyを再インストールしたら動作するようになった


737.名前:名無し 2022年12月20日 10:52:00ID:24e3c7

カスタムファイル名の日付の形式って以前みたいにyyMMddみたいな感じに変更できませんか?

738.名前:名無し 2022年12月23日 06:16:00ID:6ee4a9

API ver1.5.3でうごイラの保存/動画変換時に不具合があります。
この現象は NEXTのver1.4.0では不具合無く正常に保存/変換できました。
コマ数が多すぎて分割となる際に発生するのではないかと推測しています。

対象例:ttps://www.pixiv.net/artworks/103770134 (全年齢)
オプション:うごイラをGIFアニメ、うごイラをmp4

API Ver1.5.3
GIF変換中に強制終了(エラー報告無し)
GIF生成中に、NEXTのように分割処理されていない。
>>729二期祭のような動作をしていない)
GIFオプションのみ:強制終了
mp4オプションのみ:ZIPダウンロードのみで終了されており、動画に変換されていない。

NEXT Ver1.4.0の場合 <<ログ>>
ttps://www.pixiv.net/artworks/103770134を取得します。
ttps://i.pximg.net/img-original/img/2022/12/21/02/51/48/103770134_ugoira0.jpgをダウンロードします。
ttps://i.pximg.net/img-zip-ugoira/img/2022/12/21/02/51/48/103770134_ugoira1920x1080.zipをダウンロードします。
M:/pixiv_downloader_next/down/ものじぃ__77211603/103770134_<【さくらみこ】色違いホゲータに発狂>_103770134_ugoira1920x1080.zipを解凍します。
M:/pixiv_downloader_next/down/ものじぃ__77211603/103770134_<【さくらみこ】色違いホゲータに発狂>_103770134_ugoira1920x1080をGIFに変換します。
フレーム数が多いので分割します。
M:/pixiv_downloader_next/down/ものじぃ__77211603/103770134_<【さくらみこ】色違いホゲータに発狂>_103770134_ugoira1920x1080_1.gifを生成します。
<<<・・・中略・・・>>>
M:/pixiv_downloader_next/down/ものじぃ__77211603/103770134_<【さくらみこ】色違いホゲータに発狂>_103770134_ugoira1920x1080_12.gifを生成します。
GIFを結合します。
M:/pixiv_downloader_next/down/ものじぃ__77211603/103770134_<【さくらみこ】色違いホゲータに発狂>_103770134_ugoira1920x1080を動画に変換します。
1分44秒
終わりました。





最後 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20・・・

名前   
本文


削除キー
戻る