Open umi-tyaahan opened 3 years ago
@umi-tyaahan 報告ありがとうございます。なるほど、pixivのAPIが変わっていたんですね。URL載せても構わないので、修正済みのNotebookをいただければ置き換えます。トークンやパスワードがあるので可能でしたらで構いません。
了解です。 確認しましたが、個人情報はpixiv.json側だったので大丈夫そうです。
google drive共有 https://colab.research.google.com/drive/1JwpSsBcvs8JOCrLID-3Q8aY_atAPPDr1?usp=sharing
素晴らしいです。現在のOPY dataset.ipynbにPixiv API変更対応後のNotebookを追加しておきました。 ありがとうございました!
楽しく学習させていただいております。 5章の演習OPY dataset.ipynbですが、いくつか変更を加えることでdatasetを作成することができました。 後続の方への参考に、修正ポイントを記載します。
修正概要
詳細
1. Selenium方式でのリフレッシュトークン取得
途中Chromeに人力での入力作業が必要のため、1.はローカルPC作業となります。 (seleniumに熟知すればCUIのみ(Colabのみ)で済むかもしれません…) windows10&powershell(python3)で実施
準備
92.XXX.XXX
とか92.XXXX
なら92のやつchromedriver.exe
を作業フォルダに置くpython3 -V
でversion表示されたらOKpythonのライブラリインストール
pip install selenium
pip install pixivpy
pip install requests
一旦Seleniumの動作テスト
作業フォルダに以下の
test.py
とchromedriver.exe
を置くpython3 ./test.py
search_results.png
が作成される。リフレッシュトークンの取得
pixiv_auth.py
を以下から取得し、作業フォルダに配置。https://gist.github.com/upbit/6edda27cb1644e94183291109b8a5fde
python3 pixivpy login
expires_in: 3600
と表示されるので、APIを1時間利用しないと期限切れになると思われるpython pixiv_auth.py refresh OLD_REFRESH_TOKEN
で行けるらしいけど未確認pixivpyのテスト
以下の
pixivpy-test.py
でpixivpyでのログインと動作のテスト。 メモしたリフレッシュトークンを記入しておく。うまくいけばランキング1位~3位の画像を取得できる。
2. pixiv.jsonの修正
OPY dataset.ipynbの途中にて、pixiv.jsonをgoogle driveに上げる手順がありますが、pixiv.jsonにリフレッシュトークンを追記します。
3行目に追記してます。メモしたリフレッシュトークンを記載します。
3. pixivpyのログイン処理のコードを修正
2箇所修正します。
実行結果
所要時間 6時間20分 取得ファイル 9977
実行時エラーログ(作者退会済みやhash mismatchedなど) pixivpy_error.txt
その他
Colabの自動切断を防止
の項目