Giter VIP home page Giter VIP logo

ank-pixiv-tool's People

Contributors

anekos avatar ginzu avatar gitter-badger avatar typetonk2 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ank-pixiv-tool's Issues

多サイト対応について

twitterの方で多サイト対応の話題が出ていましたが、
追加コードの分離の件で少し思うところがありましたので、
nijie対応のプロトタイプコードを書いてみました。

方向性としてはサイト固有部分を独立ソースに分離して
ankpixiv.jsはちょっとだけ触るだけにできれば…という感じです。

https://github.com/ginzu/Ank-Pixiv-Tool/commit/e1523b2cb3ae4ce1832409f3c1f70e0319e946b4

※まだDLできるだけで、ページオープン時のDL済みマークの表示とか
 評価での自動DLとかは作りこんでいません。
 DBの定義変更も未。

現時点でinfo:,elements:以外でも4か所pixiv/nijieの分岐がありますが
なんとか吸収してサイトの追加時のankpixiv.jsの修正箇所が限定できればなぁ、
とも思います。

ソースファイルの構成について、ご検討(?)いただければと思います。

人柱版でのpixiv漫画形式の画像保存できない。

人柱版でのpixiv漫画形式の画像を保存しようとすると
「サーバーがエラーページを返却しました。しばらく経ってから再度実行してみてください」
と出て保存できません。
ビュワーも同様に機能しません。

Firefox 32.0.3
Ank Pixiv tool 2.0.0pre

要望:これまでにDLした画像のファイル名から、新たにankpixiv.sqliteを生成

こんにちは。
要望も可能なそうなので、実装してほしいコメント欄の要望をいくつか、メモ的にこちらにも書かせてください。

今までにダウンロードした画像を全て、保存ディレクトリ or 指定したディレクトリに納めて、
Ank Pixiv Toolで、画像をダウンロードした際に付けられるファイル名を指定する「?memoized-name? - ?title? (?illust-id?)」の内の、
「?illust-id?」の部分でその画像のURLを特定し、その情報から新たにankpixiv.sqliteを作る機能が欲しいです。
その画像が削除されてしまっていたり、そもそも投稿者がpixivを退会してしまったりしていた場合は、もしかしたらできないのかもしれませんが…。

[TypeError] AnkPixiv.info.path.largeStandardImage is undefined

Tried the latest branch 'fix/pixiv-has-changed-20140930' and attempting to download produces this message:

<<ANK<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
[TypeError]
  message: AnkPixiv.info.path.largeStandardImage is undefined
  filename: chrome://ankpixiv/content/ankpixiv.js
  linenumber: 249
  stack: illust.server@chrome://ankpixiv/content/ankpixiv.js:249:11
textize@chrome://ankpixiv/content/ankpixiv.js:429:47
textize@chrome://ankpixiv/content/ankpixiv.js:429:47
AnkPixiv.infoText@chrome://ankpixiv/content/ankpixiv.js:439:7
AnkPixiv.downloadCurrentImage@chrome://ankpixiv/content/ankpixiv.js:878:13
AnkPixiv.onDownloadButtonClick@chrome://ankpixiv/content/ankpixiv.js:2233:19
onclick@chrome://browser/content/browser.xul:1:1

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

投稿日付の書式変更について

work-info配下の投稿日付の月日の記述がゼロパディングでなくなったため(いつから?)
ファイル名にillust-monthとillust-dayを含めるようにしていると
新旧でファイル名の形式が一致しなくなってしまいました。

致命的ではないですが、ご報告まで。

Error if window/tab closed before download complete

Using Firefox 15, I get the following error:

[JavaScript Application]
fileName: chrome://ankpixiv/content/ankpixiv.js
lineNumber: 1511

It happens when I start to download an image but the window is closed before the download completes. I suppose it's because the ownerDocument no longer exists.

漫画形式でのダウンロードができなくなった

・ankのエラー発生個所です>ankutils.jp ~ [makeLocalFile]

※引数 path が null のため file.initWithPath(path) でぬるぽ発生

・問題が発生したページです>漫画形式全般

・詳細は下記の通りです。

漫画形式の閲覧ページの変更により、漫画の総ページ数がとれなくなったのが原因と思われます。
(総ページ数がとれない→urlリストが作れない→空のurlリストを元にダウンロードメソッドを呼び出したら引数がnullだった、というような流れかと)

ソース的にはこのあたりです。

ankpixiv.js ~ [ getLastMangaPage ]

L.1479
let sm = scripts.filter(function (e) ~e.textContent.indexOf('++pixiv.context.totalPages'));

(ご参考)

個人環境では、応急処置的に以下のように修正してみました。
let sm = scripts.filter(function (e) ~e.textContent.indexOf('pixiv.context.pages['));

※再現環境
FF21.0+1.18.2

Can't view R-18 manga if third-party cookies are disabled

Firefox 20.0, APT 1.18.1

If Firefox's "Accept third-party cookies" is disabled, clicking an R-18 manga will show the first page, but the <option> containing the page list will be empty, and clicking the << or >> buttons will close the manga view.

It seems that XMLHttpRequest does not send the authentication cookie if third-party cookies are disabled.

diff --git a/source/chrome/content/ankpixiv.js b/source/chrome/content/ankpixiv.js
index fd75d62..8a79e37 100644
--- a/source/chrome/content/ankpixiv.js
+++ b/source/chrome/content/ankpixiv.js
@@ -1496,6 +1496,11 @@ try {

       let xhr = new XMLHttpRequest();
       xhr.open('GET', AnkPixiv.info.path.mangaIndexPage, true);
+      try {
+        xhr.channel.QueryInterface(Ci.nsIHttpChannelInternal).
+          forceAllowThirdPartyCookie = true;
+      }
+      catch(ex) { /* unsupported by this version of FF */ }
       xhr.onreadystatechange = function (e) {
         if (xhr.readyState == 4 && xhr.status == 200) {
           let arr = get(xhr.responseText);
diff --git a/source/chrome/content/ankutils.js b/source/chrome/content/ankutils.js
index f039433..7f1c769 100644
--- a/source/chrome/content/ankutils.js
+++ b/source/chrome/content/ankutils.js
@@ -288,6 +288,12 @@ try {
    remoteFileExists: function (url, callback) { // {{{
       let xhr = new XMLHttpRequest();
       xhr.open('HEAD', url, !!callback);
+      try {
+        xhr.channel.QueryInterface(Ci.nsIHttpChannelInternal).
+          forceAllowThirdPartyCookie = true;
+      }
+      catch(ex) { /* unsupported by this version of FF */ }
+
       xhr.onreadystatechange = function (e) {
         if (xhr.readyState == 4) {
           callback(xhr.status == 200);
@@ -308,6 +314,12 @@ try {
      function rfe (callback) {
         let xhr = new XMLHttpRequest();
         xhr.open('HEAD', url, true);
+        try {
+          xhr.channel.QueryInterface(Ci.nsIHttpChannelInternal).
+            forceAllowThirdPartyCookie = true;
+        }
+        catch(ex) { /* unsupported by this version of FF */ }
+
         xhr.onreadystatechange = function (e) {
           if (xhr.readyState == 4)
             callback(xhr.status);

Pixiv now support animated pictures

Hi, I checked out pixiv today, and surprise to find out that pixiv now support animated pictures, but the addon can't download them.
I would be very appreciated if you give it a little attention :)
Thank you

used表示のエフェクトの負荷が高い?

「使用済み」が左右に泳ぐエフェクトのCPU負荷が高いように感じます。

具体的には、i5-3550+Win8 x64+FF24.0+ANK1.19.0で平均7%、
Athlon II Neo 325+Ubuntu 12.04+FF23.0+ANK1.19.0で平均50%ほど
占有するような感じです。

環境依存かもしれないので、
そちらでも再現するかどうか確認をお願いできますでしょうか。

i can't download picture

a few months ago, i just can't download by click the picture
but if i click the botton on the firefox i can download the picture

now i update firefox to 29.0
and i meet some problem

<<ANK<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
[TypeError]
message: illust.dateTime is undefined
filename: chrome://ankpixiv/content/ankpixiv.js
linenumber: 290
stack: @chrome://ankpixiv/content/ankpixiv.js:290
textize@chrome://ankpixiv/content/ankpixiv.js:383
textize@chrome://ankpixiv/content/ankpixiv.js:383
AnkPixiv.infoText@chrome://ankpixiv/content/ankpixiv.js:393
AnkPixiv.downloadCurrentImage@chrome://ankpixiv/content/ankpixiv.js:832
AnkPixiv.onDownloadButtonClick@chrome://ankpixiv/content/ankpixiv.js:2184
onclick@chrome://browser/content/browser.xul:1

can you tell me how to solve this problem?

thank you very much

マンガ形式の保存について

前略
いつも貴チームのアドオンを使わせていただいております。
さて、貴チームでベータ状態にあるバージョン(Fix-pixiv-has-changed-20140930)を32.0.3の火狐で使ってみましたところ、マンガ形式の保存をしようとした際に正しく因数が渡されず、保存ダイアログには、「#page-number#.jpg」と表示されてしまいました。
そのため、このバグを修正してもらえませんでしょうか。
あるいは、小生のほうの設定ミスが原因であるようでしたら、その点を指摘してもらえませんでしょうか。
それではよろしくお願いいたします。
草々

追伸
現在の小生の利用環境も念のため記載しておきます。
os: win7 prox64
mem:8gb
maker:msn p67基盤による自作
現象の発生手順
1.保存ダイアログを使用するをONにした状態にする。
2.マンガページ(ここでは表紙にあたるページ)にアクセスをする。
3.保存しようとank pixiv toolのアイコンをクリックする。
4.引数が正常に渡されず、「#page-number#.jpg」となってしまう。

その他
以下のことを実行してみましたが、改善しませんでした。
・代替ファイル名から#page-number#を除去する。

サーバーがエラーページを返却しました。2.0.0

開発お疲れさまです。
早速2.0.0(master)をmakeしてインストールしてみましたが、
画像の保存ができませんでした。
具体的には、以下のエラーを返してきます。
(環境はfirefox32.0.3です。)

<<ANK<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
[TypeError]
message: path.image.images[0] is undefined
filename: chrome://ankpixiv/content/sites/ankpixiv.js
linenumber: 317
stack: AnkModule/path.ext@chrome://ankpixiv/content/sites/ankpixiv.js:317:16
AnkContext@chrome://ankpixiv/content/ankcontext.js:111:1
AnkBase.downloadCurrentImage@chrome://ankpixiv/content/ankbase.js:704:13
AnkBase.onDownloadButtonClick@chrome://ankpixiv/content/ankbase.js:1998:19
onclick@chrome://browser/content/browser.xul:1:1

2014-10-02 10 09 20
2014-10-02 10 09 33

人柱版公開

1.19.2 が公開状態になったら、公開しようと思いますが、いかがでしょうか。
(1.19.2 より前にすると、Pixiv 変更の対応のためだけに入れちゃう人がいそうなので)

漫画形式の保存についての要望

最早、なくてはならないほど重宝させて頂いております。
一つ要望なのですが、漫画形式のダウンロード時、自動的にフォルダを作成される仕様ですが、
フォルダを作成せず、現行のフォルダ名+番号+拡張子の保存名で保存できるような設定も
できないものでしょうか?
ご検討よろしくお願いします。

漫画形式でエラーが発生してしまう

次のエラーメッセージが表示されてしまい、漫画形式が保存できません。漫画形式ではない場合は問題なく保存できます。
Ank Pixiv Tool 1.17.18
Firefox 19.0
WindowsXP Pro SP3
の環境です

QueryInterface: function QueryInterface() {
[native code]
}
message: Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsILocalFile.initWithPath]
result: 2147500037
name: NS_ERROR_FAILURE
filename: chrome://ankpixiv/content/ankutils.js
lineNumber: 369
columnNumber: 0
location: JS frame :: chrome://ankpixiv/content/ankutils.js :: AnkUtils.makeLocalFile :: line 369
inner: null
data: null
initialize: function initialize() {
[native code]
}

要望:既に保存済みの、「同一の投稿者なんだけど投稿者名がバラバラ」な画像達の、投稿者名を統一する機能

この機能についてですが、特にコミケ等が近付いた際に多いのですが、
投稿者名の後に「@け-23」とか付けるため、頻繁に投稿者名が変わる人が多く、
他にも、全然違う名前に変わる人もいるため、
保存された画像の投稿者名がバラバラになってしまって整理しにくいので、
…この機能はankpixiv.sqliteに投稿者IDも記録されてると云う前提での話になるんじゃないかと思いますが…、
ankpixiv.sqlite内のその情報を参照して、保存ディレクトリ or 指定したディレクトリ内の画像の、同一投稿者による画像の投稿者名の部分を、投稿者ID or 最古 or 最新の投稿者名等に、一括で統一できる機能が欲しいです。

最初から、「?memoized-name?」ではなく「?memoized-id?」にしてれば、こんな事で悩まなくて良かったのですが…、
最初の頃はその辺の設定がよくわからず、使い始めてだいぶ経ってから気になりだしてしまったので…。

複数の要望になってしまい、多いので申し訳無いのですが、よろしくお願いします。

漫画形式の画像のパスについて

「オリジナルサイズの漫画をダウンロードする」をtrueにしてダウンロードする場合
画像のパスに'_big'が付加されますが
ankのviewerで閲覧する際は'_big'がつかない元のパスのままのため
ダウンロードが終わったあとに閲覧すると
FireFoxのキャッシュが効かずサーバにまた画像データをとりに行ってしまいます。
(_bigをつけてキャッシュヒットするようにしてもとりに行って304な時もありますが)
「オリジナルサイズで漫画をビュー」オプションなどご検討いただけると幸いです。

起動時にstorageでnull例外

■現象

・起動時にコンソールに次ようなメッセージが記録されます。

<<ANK<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
[TypeError]
  message: Components.classes[klass] is undefined
  filename: chrome://ankpixiv/content/ankutils.js
  linenumber: 359
  stack: AnkUtils.ccci@chrome://ankpixiv/content/ankutils.js:359
AnkStorage.prototype.tableInfo@chrome://ankpixiv/content/ankstorage.js:200
AnkStorage.prototype.updateTable@chrome://ankpixiv/content/ankstorage.js:214
AnkStorage.prototype.createTable@chrome://ankpixiv/content/ankstorage.js:186
AnkStorage.prototype.createTables@chrome://ankpixiv/content/ankstorage.js:170
AnkStorage@chrome://ankpixiv/content/ankstorage.js:29
initStorage@chrome://ankpixiv/content/ankpixiv.js:2039
AnkPixiv.onInit@chrome://ankpixiv/content/ankpixiv.js:2047
@chrome://ankpixiv/content/ankpixiv.xul:18

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

■原因

・これでしょうか。

Components.classes["@mozilla.org/storage/statement-wrapper;1"]

■ローカルでの応急対処

・以下のようにしてみました。

(AnkStorage.prototype.tableInfo@chrome://ankpixiv/content/ankstorage.js:200
)

    tableInfo: function (tableName) { // {{{
      let q = 'pragma table_info (' + tableName + ')';
      return this.createStatement(q, function (stmt) {
        let result = {};
        while (stmt.executeStep()) {
          result[stmt.row["name"]] = {type: stmt.row["type"]};
        }
        return result;
      });
    }, // }}}

■再現環境

FF22.0+1.18.3

2.0で追加されたPixiv以外の他サイトにおけるDL機能について

Ank-Pixiv-Toolには長年大変お世話になっております。
2.0でTwitter等他サイトの画像も保存できるようになったようですが、ツイートやURL情報ごと分類保存出来るなど非常に便利そうな半面、Pixivの画像のみ保存していたフォルダに他サイトのものが混ざり込んでしまったり、他のアドオン・スクリプトと競合が起きそうな気配など現状では少し問題がありそうにも感じます。
ひとまず、他サイトへの対応機能をまるっとオン・オフする設定は必要ではないでしょうか。
また、対応する他のサイトのドメインorサービス名毎のフォルダ分け(その中に画像/サブフォルダが入る)機能などがあれば、今までPixivのみフォルダ分けしていた場合でも使い勝手が良いかと思います。

addon no longer work (05/12/2014)

When I updated firefox to the new version 29 (with new GUI) it worked just fine, until today. I guess pixiv has changed something, so the addon no longer work

Here's the error

<<ANK<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
[TypeError]
message: illust.dateTime is undefined
filename: chrome://ankpixiv/content/ankpixiv.js
linenumber: 290
stack: @chrome://ankpixiv/content/ankpixiv.js:290
textize@chrome://ankpixiv/content/ankpixiv.js:383
textize@chrome://ankpixiv/content/ankpixiv.js:383
AnkPixiv.infoText@chrome://ankpixiv/content/ankpixiv.js:393
AnkPixiv.downloadCurrentImage@chrome://ankpixiv/content/ankpixiv.js:832
AnkPixiv.onDownloadButtonClick@chrome://ankpixiv/content/ankpixiv.js:2179
onclick@chrome://browser/content/browser.xul:1

Best regard

ankpixiv.sqliteにcreate index illust_id

質問:
ankpixiv.sqliteのhistoriesテーブルにデフォルトでcreate index illust_idを実行しておくことは可能でしょうか。

理由:
①atomやc-60クラスの非力なマシンで
②historiesが数万件あるといった規模の場合に
③新着一覧などを開くとfirefoxがしばらくno responseになってしまうが
④create index(illust_id)しておくと覿面に改善されるため

※①+④→dbをramdiskに置いてもNGだったのでたぶんdisk i/oではなくcpu loadの問題と思われます。

補足:
①+②のような環境はレアケースとは思いますし
④は気になった人が自分でsql叩けばいいのでは?とも思うので
対応希望というよりは、ご報告レベルと受け取っていただければと思います。

DOM操作に失敗するページがある

DOM操作に失敗してViewerのインストールや保存等ができないページがありました。

・ankの問題発生個所です>ankpixiv.jp(126) ~ [AnkPixiv.elements.illust.mediumImage]

・問題が発生したページです>http://www.pixiv.net/member_illust.php?mode=medium&illust_id=10292808

・詳細は下記の通りです。

HTMLのソースを見ると正しい形式になっています。
<div class="works_display"><a ...><img ...>

しかし、キャプションが太字になっているせいなのかjsに書き換えられて
<div class="works_display"><strong><a ...><img ...>

のように間にstrongが追加されてしまいます。

このstrongのために操作に失敗しnullが返されてしまい、
呼び出し元の処理がストップしてしまいます。

このページ固有の問題なのか他にもあるのか、
strong以外のバリエーションがあるのか、
もしかしてページではなく閲覧者の環境に依存したりしないのか、
ちょっと見当がつきませんが一応ご報告させていただきます。

※再現環境
20.0.1+1.18.0(profileをリセットしてankだけ入れた環境)

occurs in the 297th row of ankpixiv.js error

When I gave a rating or, by clicking on the image for download the image, an error occurred.

<<ANK<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
[TypeError]
message: AnkUtils.A(...).map(...).filter(...)[0] is undefined
filename: chrome://ankpixiv/content/ankpixiv.js
linenumber: 297
stack: member.id@chrome://ankpixiv/content/ankpixiv.js:297:1
textize@chrome://ankpixiv/content/ankpixiv.js:383:47
textize@chrome://ankpixiv/content/ankpixiv.js:383:47
AnkPixiv.infoText@chrome://ankpixiv/content/ankpixiv.js:393:7
AnkPixiv.downloadCurrentImage@chrome://ankpixiv/content/ankpixiv.js:832:13
AnkPixiv.downloadCurrentImageAuto@chrome://ankpixiv/content/ankpixiv.js:1100:7
AnkPixiv.installMediumPageFunctions/installer/</<@chrome://ankpixiv/content/ankpixiv.js:1503:21

i'd using filename "?pixiv-id?(?member-name?)"
I would like to know the solution please.

I have a trouble in a case

I select the option "Show the large image on the same tab when you click the middle image." in "Miscellaneous"
And I click the middle image
when I'm waiting the large picture ,I switch to another tab and read
But than the picture download finish ,any page I'm reading ,will be moved to pagetop

投稿日時表示が不正になっているときがある

hatenaの方で報告されている方がいらっしゃったので見ていたのですが、
投稿日時の表示が

2013-09-26 12:Sep

のようにおかしくなる時があるようです。発症頻度はランダムです。

多サイト対応の方に、このような状態の場合は日付だけ取得して時刻は捨てるコードを書いたので、masterの流れの方にも同様に書いてみました。

しかしながら、pixiv側の問題だと思われるのでtool側で余計なコードを追加すべきかどうか…?という感じもないではないです。

【要望】DL済みの画像を評価する時のオプション(Feature Request: Options for giving a score rating if the illustration was already downloaded)

2.0.1 リリース乙です〜
いつも Ank を愛用しています、
anekos さんも ginzu さんも愛してます

さて、自分は普段採点同時に DL してるので、あんまり Ank アイコンを押してなかったんだが、さっき逆の手順を取ったら(採点が後となって)、ダウンロードしなければ、採点もできなくなってるらしい

※注:「confirmExistingDownloadWhenAuto」を無効にすればダイアログは出ない、が、「保存済み」の文字も一時的に消える

こういう場合に、再 DL の確認同時に、「採点のみを行う」のオプションも付いた方がいいと思います

では、よろしくお願い致します

(あと zh-TW ロケールを Babelzilla にうpしました、そちらもよろ〜)

Unable to install the newer version on firefox

Whenever i install through firefox, firefox says it can't be installed because it's corrupt.
if i try to install manually, using the makefile or copying the source files into a zip and then changing the name of the zip to [email protected], and putting it into the extension folder, firefox just deletes the file after i launch firefox.
there's other people with the same problem at the review page of the program too, https://addons.mozilla.org/en-US/firefox/addon/ank-pixiv-tool/reviews/?src=api

要望:漫画形式をDLした後の、フォルダ内の画像のファイル名について

漫画形式のをDLした場合、デフォルトでは「?memoized-name? - ?title? (?illust-id?)」の部分は、DLした漫画が収められたフォルダの名前のみに反映されますが、
肝心な、フォルダ内の漫画のファイル名はただの連番だけとなってて、そこが残念なので、
フォルダ内の漫画のファイル名にも、「?memoized-name? - ?title? (?illust-id?)」の部分が反映されるように、
保存ディレクトリ or 指定したディレクトリの、DLした漫画のフォルダ内の漫画のファイル名を、
フォルダ名を含ませる形のファイル名に一括変換できる機能が欲しいです。

(例)
D:\保存\あいうえお - かきくけこ(1111)\05.jpg

D:\保存\あいうえお - かきくけこ(1111)\あいうえお - かきくけこ(1111)05.jpg

同様に、今後DLした際も、自動的にこのようなファイル名で保存できるようにしてほしいです。

エラー"TypeError: can't access dead object"が永久ループ

確実な再現方法はみつけていないのですが、
漫画形式を何回か閲覧後、漫画形式の途中でキャンセル動作(画像外をクリックとか)してから
別の作品ページに移動すると、エラーコンソールに"TypeError: can't access dead object"が
繰り返し表示されFireFoxを終了するまで止まらない時があります。
発生ポイントは以下です。

ankpixiv.js

        let hideButtons = function () {
          let buttonOpacity = 100;
          fadeOutTimer = setInterval(function () {
            if (buttonOpacity <= 0) {
              clearInterval(fadeOutTimer);
              fadeOutTimer = void 0;
            }
            buttonOpacity -= 10;
            buttonPanel.style.opacity = buttonOpacity / 100.0; ←ここ
          }, 100);
        };

補足として、マウスオーバーしてbuttonPanelを出した状態で
Ctrl+Wでタブを閉じると同じ箇所で同じエラーは出るのですが
その時は9回以内で止まります。

バージョン:FF19.0+1.17.17/1.17.18b1
FFクリーンインストール直後でも発生しました。

Feature request: Download entire page (or all works with a tag)

Hello, thank you for your great tool.

I sometimes download whole pages of works and its difficult to do so by opening every single one and click to download, so can i ask for a feature to download the whole page?
Or some kind of an option to download all works by tags?

Or maybe someone knows a alternative solution to mass ripping?

Thank you again.

サーバーがエラーページを返却しました

pixivにて「サーバーがエラーページを返却しました」と出て以下のダイアログが表示されました
<<ANK<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
[TypeError]
message: path.image.images[0] is undefined
filename: chrome://ankpixiv/content/sites/ankpixiv.js
linenumber: 334
stack: AnkModule/path.ext@chrome://ankpixiv/content/sites/ankpixiv.js:334:16
AnkContext@chrome://ankpixiv/content/ankcontext.js:114:1
AnkBase.downloadCurrentImage@chrome://ankpixiv/content/ankbase.js:724:23
AnkBase.onDownloadButtonClick@chrome://ankpixiv/content/ankbase.js:2030:19
onclick@chrome://browser/content/browser.xul:1:1

一枚絵の作品でのみ出現する様子です
FirefoxのVerは33.0.2、Ank pixiv toolのVerは2.0.1です

色々要望

要望も可能なそうなので、実装してほしいコメント欄の要望を、メモ的にこちらに書きます。

[1]これまでにDLした画像のファイル名から、新たにankpixiv.sqliteを生成
今までにダウンロードした画像を全て、保存ディレクトリ or 指定したディレクトリに納めて、
Ank Pixiv Toolで画像をダウンロードした際に付けられるファイル名を指定する「?memoized-name? - ?title? (?illust-id?)」の内の
「?illust-id?」の部分でその画像のURLを特定し、その情報から新たにankpixiv.sqliteを作る機能が欲しいです。
その画像が削除されてしまっていたり、そもそも投稿者がpixivを退会してしまったりしていた場合は、もしかしたらできないのかもしれませんが…。

[2]漫画形式をDLした後の、フォルダ内の画像のファイル名
漫画形式のをDLした場合、デフォルトでは「?memoized-name? - ?title? (?illust-id?)」の部分が、DLした物のフォルダ名となりますが、
肝心なフォルダ内のファイル名はただの連番だけとなっててそこが残念なので、
フォルダ内の漫画のファイル名にも「?memoized-name? - ?title? (?illust-id?)」の部分が反映されるように、
保存ディレクトリ or 指定したディレクトリの、DLした漫画のフォルダ内のファイル名を、フォルダ名を含ませる形のファイル名に一括変換できる機能が欲しいです。

(例)
D:\保存\あいうえお - かきくけこ(1111)\05.jpg

D:\保存\あいうえお - かきくけこ(1111)\あいうえお - かきくけこ(1111)05.jpg

同様に、今後DLした際、このようなファイル名で保存されるようにしてほしいです。

[3]既に保存済みの、「同一の投稿者なんだけど投稿者名がバラバラ」な画像達の投稿者名を統一する機能
特にコミケ等が近付いた際に多いのですが、投稿者名の後に「@け-23」とか付けて、頻繁に投稿者名が変わる人が多く、
全然違う名前に変わる人もいて、保存された画像のファイル名がバラバラで整理しにくいので、
…この機能はankpixiv.sqliteに投稿者IDも記録されてると云う前提での話になるかと思いますが…、
ankpixiv.sqlite内のその情報を参照して、保存ディレクトリ or 指定したディレクトリ内の画像の、同一投稿者による画像の投稿者名を、一括で統一できる機能が欲しいです。

最初から、「?memoized-name?」ではなく「?memoized-id?」にしてれば、こんな事で悩まなくて良かったのですが…、最初の頃はその辺の設定がよくわからず、使い始めてだいぶ経ってから気になりだしてしまったので。

Error

I've been using this addon a lot recently, but it stopped working today, about 2 hours ago. Here's the error:

<<ANK<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
[TypeError]
message: AnkPixiv.elements.doc.querySelector(...) is null
filename: chrome://ankpixiv/content/ankpixiv.js
linenumber: 202
stack: illust.id@chrome://ankpixiv/content/ankpixiv.js:202
textize@chrome://ankpixiv/content/ankpixiv.js:380
textize@chrome://ankpixiv/content/ankpixiv.js:380
AnkPixiv.infoText@chrome://ankpixiv/content/ankpixiv.js:390
AnkPixiv.downloadCurrentImage@chrome://ankpixiv/content/ankpixiv.js:829
AnkPixiv.onDownloadButtonClick@chrome://ankpixiv/content/ankpixiv.js:2181
onclick@chrome://browser/content/browser.xul:1

Firefox 25.0.1
Im looking forward to hearing from you
Best regard

最新のankpixiv.jsへの対応の仕方

最初に開発・対応お疲れ様です。

最新のバージョンへの更新方法が分からない方へ以下に示します。
多分これでいけるはずです。
https://github.com/anekos/Ank-Pixiv-Tool
まずは上記のbranchesをクリック
masterをクリックして右下の"Download ZIP"
次にfix/pixiv-has-changed-20140930をクリックして
Source→chrome→content→sitesまで辿ってください。
そこのankpixiv.jsをダウンロードしてください。
最初にダウンロードしたAnk-Pixiv-Tool-master.zipを展開して先と同様のフォルダ(sites)まで辿ってください。
そしてダウンロードした新しいankpixiv.jsで古い方を上書きします。
上書きしたらsourceフォルダ内全てをzipでまとめてください。sourceフォルダ自体ではないので注意してください。
zipにしたら拡張子をxpiに変更してfirefoxのアドオンマネージャーに放り込めば良いはずです。

最新のankpixiv.jsは大抵こちらにあるので更新されたら同様の方法で各自対応します。
どれが最新かはUpdateの時間から分かるはずです。

ちなみにこれはほとんどwikiに書かれていますのである程度時間経ったらこのissueを閉じようと思います。

Stopped working for some reason?

Whenever I press a manga illustration, the page dialogue box is blank, and if I press again, it doesn't go to the next page, it just closes.

If I download, it says:

QueryInterface: function QueryInterface() {
[native code]
}
message: Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsILocalFile.initWithPath]
result: 2147500037
name: NS_ERROR_FAILURE
filename: chrome://ankpixiv/content/ankutils.js
lineNumber: 369
columnNumber: 0
location: JS frame :: chrome://ankpixiv/content/ankutils.js :: <TOP_LEVEL> :: line 369
inner: null
data: null
initialize: function initialize() {
[native code]
}

ダウンロードできず

不具合ページ(※注意:R-18指定ページ)
http://www.pixiv.net/member_illust.php?mode=medium&illust_id=18088185

エラーメッセージ

QueryInterface: function QueryInterface() {
[native code]
}
message: Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsILocalFile.initWithPath]
result: 2147500037
name: NS_ERROR_FAILURE
filename: chrome://ankpixiv/content/ankutils.js
lineNumber: 369
columnNumber: 0
location: JS frame :: chrome://ankpixiv/content/ankutils.js :: AnkUtils.makeLocalFile :: line 369
inner: null
data: null
initialize: function initialize() {
[native code]
}

一応報告まで。

Can't download anymore in pixiv

I get this message when downloading from pixiv using firefox Can't download anything from pixiv. using windows 7 ulti 64bit. is there anyway to fix this?, please give some instruction on how to fix it.

<<ANK<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
[TypeError]
message: AnkPixiv.elements.illust.mediumImage is null
filename: chrome://ankpixiv/content/ankpixiv.js
linenumber: 349
stack: path.mediumImage@chrome://ankpixiv/content/ankpixiv.js:349:15
path.largeStandardImage@chrome://ankpixiv/content/ankpixiv.js:335:11
illust.server@chrome://ankpixiv/content/ankpixiv.js:237:11
textize@chrome://ankpixiv/content/ankpixiv.js:383:47
textize@chrome://ankpixiv/content/ankpixiv.js:383:47
AnkPixiv.infoText@chrome://ankpixiv/content/ankpixiv.js:393:7
AnkPixiv.downloadCurrentImage@chrome://ankpixiv/content/ankpixiv.js:832:13
AnkPixiv.onDownloadButtonClick@chrome://ankpixiv/content/ankpixiv.js:2185:19
onclick@chrome://browser/content/browser.xul:1:1

can"t open options

XML 解析錯誤: 未定義的 Entity
位址: chrome://ankpixiv/content/options.xul
行號 112, 第 11 個字:
----------^
firefox 29.0.1
Ank-Pixiv-Tool 2.00 pre

ANK Error in trying to save an image

Ank couldn't save a pixiv image when trying to save it thru clicking the image itself or rating it.

<<ANK<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
[TypeError]
  message: AnkPixiv.elements.doc.querySelector(...) is null
  filename: chrome://ankpixiv/content/ankpixiv.js
  linenumber: 202
  stack: @chrome://ankpixiv/content/ankpixiv.js:202
textize@chrome://ankpixiv/content/ankpixiv.js:380
textize@chrome://ankpixiv/content/ankpixiv.js:380
@chrome://ankpixiv/content/ankpixiv.js:390
@chrome://ankpixiv/content/ankpixiv.js:829
@chrome://ankpixiv/content/ankpixiv.js:1097
@chrome://ankpixiv/content/ankpixiv.js:1500

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

Nnn, hope that's enough info. I'll provide more when needed, though that's pretty much the issue.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.