pixiv downloader 20150715

Change Log for 20150711

  • Implement #85: Enable infinite loop for download by tags.
  • Fix Issue #79: Don’t save if the download is not complete.
  • Add option to dump tags search page.
  • Reorganize config.ini.

Change Log for 20150715

  • Fix Issue #87: Update login logic, now always use https.

Download link for pixiv downloader 20150715, source code in GitHub.

Donation Link on the side bar ==> 😀

EDIT: fix login issue

EDIT2: Try https://github.com/Nandaka/PixivUtil2/releases/tag/pixivutil20150725-beta1 for cookie issue

57 thoughts on “pixiv downloader 20150715”

  1. Hello! Im sorry for bothering, but i cant get it to work, keep getting errors: ‘Error medium page for image’. Is there something wrong? Sorry for bad english.

    1. Can you give me the image id and upload the log file to pastebin? Ensure the language in the pixiv website setting is set to either english or japanese.

      1. Image ID (39199390): time data ’10 19 2013, 02:09′ does not match format ‘%Y-%m-%d %H:%M’
        I changed ‘%Y-%m-%d %H:%M’ on ‘%m-%d-%Y %H:%M’ in PixivModel.py, its working now, can i fix this in binary? Pixiv language is english. Thank you for reply.

        1. checked the image, the format shows 10/19/2013 02:09. Mine is also set to english.

          I think you need to clear up the cookie value from config.ini to refresh the language setting from the pixiv website

  2. Not sure if this is a unique issue but I’m getting this while trying to login.
    Error at doLogin(): (, NameError(“global name ‘res_
    url’ is not defined”,), )

    1. Full error some cut off
      Error at doLogin(): (, NameError(“global name ‘res_
      url’ is not defined”,), )

  3. Just downloaded this new version, but gives me this error

    Log in using secure form.
    Error at pixiv_login_ssl(): (, URLError(SSLError(1, u’
    [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590)’),), )
    Error at doLogin(): (, URLError(SSLError(1, u'[SSL: CE
    RTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590)’),), )
    Cannot Login!
    press enter to exit.

      1. Hello and thanks for the answer.
        I checked the certificates and they are like you show in the image, and since I’m using the downloader for a very long time, Firewall shouldn’t be an issue.

        IFor no apparent reason, the downloader now works fine. Maybe it was a random problem of my very old pc.
        Tnaks again for the support.

  4. I recently noticed that many of the images that were uploaded to Pixiv in late August are missing large versions. When I try to download these images (both manga and single images), I get errors like:

    ERROR – [download_image()] HTTP Error: HTTP Error 404: Not Found at http://i4.pixiv.net/img-original/img/2015/08/25/17/16/39/52181707_p2.png
    ERROR – Image url not found/failed to download: 52181707

    The readme.txt says that it should download the medium sized version instead, but it doesn’t.

    Is there something I can do to fix this? Do I have to wait for Pixiv to fix these broken images, then re-download them?

    1. ah, I haven’t update the readme. Last time it will try to download the big image, then the medium one due to the filename can be inferred based on image id + _big +_p#number#.

      Since they changed the naming, it will not do that, but straight away parse the big image page, which only contains the big image.

      In this case, you need pixiv to wait to fix the broken image (most likely the image is not yet processed by the pixiv’s CDN)

  5. Can you allow formatting of the %works_date_only% date? Currently it’s M-D-YYYY with no leading zeroes which is just terrible. I would like a format like YYYY-MM-DD (one leading zero for month/day) which allows files to be sorted chronologically.

  6. To anyone with login problems: I also have the message with the login error:
    Error at doLogin(): (, NameError(“global name ‘res_url’ is not defined”,), )
    I found a way around though, simply open the config.ini file and remove the value of the “cookie” variable.
    You’ll find it in the Authentication group, in my case the value was a value with 40 characters, sorted like this: first 7 alphanumeric characters, then _ and finally 32 alphanumeric characters. I removed that value and it worked afterwards.

  7. I get this when I try to download my bookmarks, am I doing something wrong? (I replaced my id number)

    Member Url: http://www.pixiv.net/bookmark.php?id=XXXXXXX&p=1
    Traceback (most recent call last):
    File “PixivUtil2.py”, line 272, in process_member
    File “PixivModel.pyc”, line 51, in __init__
    File “PixivModel.pyc”, line 65, in ParseInfo
    AttributeError: ‘NoneType’ object has no attribute ‘find’
    Error at process_member(): (, AttributeError(”
    ‘NoneType’ object has no attribute ‘find'”,), )

    Dumping html to: Error page for member XXXXXXX.html
    Traceback (most recent call last):
    File “PixivUtil2.py”, line 1758, in main
    File “PixivUtil2.py”, line 1563, in main_loop
    File “PixivUtil2.py”, line 1226, in menu_download_by_member_bookmark
    File “PixivUtil2.py”, line 272, in process_member
    File “PixivModel.pyc”, line 51, in __init__
    File “PixivModel.pyc”, line 65, in ParseInfo
    AttributeError: ‘NoneType’ object has no attribute ‘find’
    press enter to exit.

    1. also is it possible to set it to download everything from everyone i’m following, I have over 1000 following so I’d like to just let it run for a few hours rather than needing to set each individually

    1. Assuming there is nothing in the new DB, just replace the file (db.sqlite).

      If not, then you need to use sql command to do it (google is your friend).

  8. On Windows 10, I find some unexpected behavior:
    – right click immediately pastes without showing a menu as in Windows 7, which is nice, but new. Intentional?
    – hiragana shows up in the window as squares, and doesn’t input properly (e.g., a search will return no results)
    – since the last few versions, even going back to Windows 7, I have to manually delete the cookie reference in the config.ini file, because the app fails login using the old ones. I’ll post the error message when I get it again.

  9. I’ve got a bit of a request here, though I’m not sure how one would implement this.

    See, when you’re a person like me, you’ve probably amassed the galleries of some number of artists. In time, one of the things that someone like me would like to do is make sure that the downloaded galleries are always up to date, however the program doesn’t have a real means of going into every folder, checking the MemberID, and then checking the artist page to download.

    So what I’d like is if such a feature was implemented. I would make the best assumption that the best way to go about this would be to have a file in every folder with the memberID in it, since some users would probably go out of their way to change the naming scheme of the downloaded folders.

    But this is just a suggestion really, but it would make it easier to make sure these folders are properly up to date when need be.

    1. Nope.

      You can set alwaysCheckFileSize = True and use proper filename format (e.g. %member_id%%image_id% and %member_id%%image_id%_p%page_index% for manga page) in config.ini.

      or you can use duplicate file finder to do the checking after download.

  10. complete error message:

    Trying to log with saved cookie
    Error at doLogin(): (, NameError(“global name ‘res_
    url’ is not defined”,), )
    Cannot Login!
    press enter to exit.

  11. Hello,
    I can’t log in!


    Trying to log in with saved cookie
    Error at doLogin(): (, NameErro
    url’ is not defined”,), )
    Cannot Login!
    press enter to exit.

    What’ s wrong? 🙁

  12. I downloaded a member gallery on July 17. Some of the single images have a _p0 while some don’t. Is that a pixiv thing or the downloader? I only noticed when I updated an archive whose last download was on Feb 2015 and I got double images because of the _p0. It’s a new database so the latter archive wasn’t in it.

      1. Yes.
        If I use %image_id% instead, that’s like %urlFilename% without the page right?
        Is anything with multiple images automatically manga format?

  13. Hello, is there a way not get the pictures saved in folders? I don’t see an option for folders in the config file.

    1. I just want all of the pictures in one folder instead of one for each artist.

      1. Never mind! I just Googled it, found an older entry when you answered the question.

  14. Wanted to ask: What are results of pylint, beyond removing some unused includes?

    1. It’s able to find unused variables, access to un-initialized variables, unreachable codes, etc.

      I did disables some coding conventions and ignore some warning.

  15. I’m getting this error in the 20150715 version: Error at doLogin(): (, NameError(“global name ‘res_url’ is not defined”,), )

  16. Since today:
    “`Trying to log with saved cookie
    Cookie already expired/invalid.
    Log in using secure form.
    Error at pixiv_login_ssl(): (, FormNotFoun
    dError(‘no form matching predicate <function at 0x031EBCB0>’,), )
    Error at doLogin(): (, FormNotFoundError(‘
    no form matching predicate <function at 0x031EBCB0>’,), )
    Cannot Login!“`

    1. By the way, there is a small mistake in the link of the new version, the colon after http is missing (+ a strange “use” before the address in the link).

  17. I also had errors saying the cookie has expired and also unable to log in from the config. this was on an older version so I downloaded the latest only to have the same problems.

  18. Hi, I’ve been trying to use the newest version with proxy (can’t access Pixiv.net otherwise due to ISP blocking), and it has been giving me this error:

    Log in using form.
    Error at pixiv_login():(, URLError(error(10054, ”),), )
    Error at doLogin(): (, URLError(error(10054, ”),), )
    Cannot Login!
    press enter to exit.

    I’ve had the same problem with earlier version and tried different proxies already.
    Please tell me if there’s anything I can do or if it’s a proxy issue?

Comments are closed.