Change Log:
- Add menu to reload config.ini
- Add %date% for filename format (YYYYMMMDD).
- Add option to skip image if worksDate < dateDiff, this will skip to next member, or stop processing for download from new bookmark.
Download link forΒ pixiv downloader 20130316, source code in GitHub.
EDIT: Add the download link π
Right now it’s skipping some images (tried with several member_ids), it says “file url not found” but it’s probably an issue with Pixiv’s servers – when I go to the pages of those pictures, the mid-sized version is present but not the big one when I click.
Anyway, a very minor feature I’d like to suggest (since you are going to update again soon, as I read): what about a simple command, for example CTRL+S, to skip the image or manga the program is currently downloading or checking? Of course, the point of the program is to automate the collecting of the pics while you can do other things, however, sometimes I think of such a command when (especially during bookmark updating) the program has to go through an entire long manga it has already downloaded. Just one of those “not necessary but appreciated” things.
Should I post it in the GIthub like last time?
better do that, most likely you need to use Ctrl-C (break) cos I don’t catch for a specific keystroke in console. Dunno if I can capture keyboard event in console application…
Hey there. New user here.
Using the commandline thing, when I try to enter username and password, I get a “Wrong username, [enter] to exit” message.
I try to manually enter the username and password into the config file as well, and I STILL get the wrong username message! What? Do I need to log out first or something?
I appreciate your effort in developing this software, and I want to experience firsthand your handywork.
Can you set debughttp = True and paste the result to pastebin? You should see GET http://www.pixiv.net/mypage.php after the login succeed.
I got an image EXACTLY like liyo’s.
Here’s what it says at the end (what wasn’t shown in liyo’s image)
http://prntscr.com/y5x14
yap, same issue. Pixiv redirect to index.php, rather than mypage.php. I think they doing A/B testing for the interface. Anyway, I’ll update this on the weekend.
Neato. Thanks for replying so quickly.
I eagerly await the next update.
it says that my account is incorrect, i tried at pixiv page and it work, tried also in the config file and nothing, what could it be? its happening since the last version
Try to temporary change the password to simpler one (e.g.: abc) and retest? Mine is working. Do you use special character, or even non-ascii username/password?
Do you enter the password through console, or written in config.ini?
Well you see, my account is very simple, tried and changed the password two or three times, with four letters and two numbers, still not working xD
I entered the password through the console, also in config.ini but the error remains there: “wrong username or password”
I also downoaded the files a couple of times, but they’re not working, maybe a bad configuration on my internet conection?
Can you set
debughttp = True
and paste the result to pastebin? You should seeGET http://www.pixiv.net/mypage.php
after the login succeed.I did what you said, here’s an image showing what appears after that http://prntscr.com/y5gyk
I think I know why. I’m expecting it will forward me to mypage.php directly, but somehow it redirect me to index.php. I’ll update it in the weekend.
Thanks for your hard work, keep it up!!! π
Thank you very much for this. May I ask if its possible to download Submitted Novels ?
Nope.
It takes like, three minutes to download one single image. Is there some kind of delay between downloading images or is pixiv throttling my speeds? I can load images normally in browsers and other image downloaders (that don’t do the job as well as pixivutil does). Thank you for creating and maintaining this app, nandaka.
no throttling from my application, the download section didn’t change. Try to change the
useragent
in config.ini or try to use proxy.Alright, will do. It’s not beyond the point of unbearable, though. Thanks, nandka.
You’re the best for keeping this updated! Thank you!
I hadn’t used Pixiv Downloader for a while and decided to update to the latest version as I was intending to use it now and I now I’m unable to download more than a few files, since the script starts to trip up afterwards.
Here’s a log for when I tried to download all images by a certain user. http://pastebin.com/NeuTcJRb
I’m using OS X 10.8.3 with Python 2.7.3
If you are using the source code version and encounter ValueError: invalid literal for int() with base 10: ”, please modify _html.py from mechanize library with this http://pastebin.com/5bT5HFkb.
Thanks. That seemed to do the trick.
Oh, thank you, the cleanup worked! Also, it does appear that pixiv is now throttling my IP. The proxy is much faster.
Has downloading been throttled? I used to be able to update my “tags” folder in 1 to 2 hours. I’m currently at hour 57 of the program running.
No throttling from my side, the download portion didn’t change. I only add %date% for filename format and datediff option. You see all changes in https://github.com/Nandaka/PixivUtil2/commits/master
Alright. I’m getting a lot of timeouts, retries, and some downloads are just taking 2-3 minutes for a file less than 500kb in size. I haven’t noticed anything odd on my connection, unless pixiv themselves are throttling my account.
try to use proxy?
Alright, let me get a working one, but how do I cancel PixivUtil2 without adding an image to database without downloading it? I’ve had this happen before and needed to delete the whole database as a result.
You means adding the image to db without downloading it, or downloading the image without adding it to db?
The first one is not possible, it will only add the image if the download is completed successfully (https://github.com/Nandaka/PixivUtil2/blob/master/PixivUtil2.py#L713).
The second one, you can backup the db, do the download, and then restore the db again.
There is an option do DB Manager to clean up (delete the image id) the db from missing image (based on the saved path in DB). Press ‘d’, then ‘c’.
Oh, I got that error again that messed up my entire pixiv tags folder. “Error at loadConfig(): (, No Option ‘datediff; in section: ‘Settings’, )
And then it wrote another config file, but deleted my filepath settings. Is there any way to prevent this in future versions? I downloaded about 40 gigs extra because of that.
I’ll see what I can do. You can create a backup of config.ini before updating to new version.
I’m trying to download via list, but when I type in 4 and hit enter, it just goes back to the menu.
I have all the links in a list.txt file in the PixivUtil folder.
check your config.ini, set:
uselist = True
processfromdb = True
If still not fixed, upload your config.ini and log to pastebin
Didn’t work.
config.ini http://pastebin.com/V9MupvyL
pixivutil.log http://pastebin.com/pXYFr3VY
config looks ok, can you upload your list.txt to pastebin?
It should be save in the same folder with the application and it should contain the member id (all numeric) separated by new line. Any line with # in the front (1st char) will be ignored.
Oh, my list only contains the links.
You say member id? Would illustration ID work?
I have this huge list of illustrations I want to download, not artists.
So would this work, for example (illustration IDs):
34008137
33644593
Nope. Check the readme.txt for list.txt format.
Ah, so I can’t download individual images via the list option, only member’s galleries?
Yes, see readme.txt
bug report:
pixiv downloader 20130316
###############################################################
2013-03-18 21:27:56,605 – PixivUtil20130316 – INFO – Starting…
2013-03-18 21:27:56,621 – PixivUtil20130316 – INFO – Only process member where day last updated >= 7
2013-03-18 21:28:02,456 – PixivUtil20130316 – INFO – Log in using form.
2013-03-18 21:28:16,933 – PixivUtil20130316 – INFO – Logged in
2013-03-18 21:28:18,461 – PixivUtil20130316 – INFO – New Illust from Bookmark mode.
2013-03-18 21:28:26,931 – PixivUtil20130316 – ERROR – Error at processImage(): (, UnicodeEncodeError(‘ascii’, u’2013u5e743u670818u65e5 21:47′, 4, 5, ‘ordinal not in range(128)’), )
2013-03-18 21:28:26,931 – PixivUtil20130316 – ERROR – Error at processImage(): 34348534
Traceback (most recent call last):
File “PixivUtil2.py”, line 576, in processImage
File “PixivModel.pyc”, line 226, in __init__
File “PixivModel.pyc”, line 308, in ParseWorksData
UnicodeEncodeError: ‘ascii’ codec can’t encode character u’u5e74′ in position 4: ordinal not in range(128)
2013-03-18 21:28:26,931 – PixivUtil20130316 – ERROR – Dumping html to: Error Medium Page for image 34348534.html
2013-03-18 21:28:26,947 – PixivUtil20130316 – ERROR – Error at processNewIllustFromBookmark(): (, UnicodeEncodeError(‘ascii’, u’2013u5e743u670818u65e5 21:47′, 4, 5, ‘ordinal not in range(128)’), )
Traceback (most recent call last):
File “PixivUtil2.py”, line 992, in processNewIllustFromBookmark
File “PixivUtil2.py”, line 576, in processImage
File “PixivModel.pyc”, line 226, in __init__
File “PixivModel.pyc”, line 308, in ParseWorksData
UnicodeEncodeError: ‘ascii’ codec can’t encode character u’u5e74′ in position 4: ordinal not in range(128)
2013-03-18 21:28:26,963 – PixivUtil20130316 – ERROR – Unknown Error: ‘ascii’ codec can’t encode character u’u5e74′ in position 4: ordinal not in range(128)
Traceback (most recent call last):
File “PixivUtil2.py”, line 1510, in main
File “PixivUtil2.py”, line 1303, in menuDownloadNewIllustFromBookmark
File “PixivUtil2.py”, line 992, in processNewIllustFromBookmark
File “PixivUtil2.py”, line 576, in processImage
File “PixivModel.pyc”, line 226, in __init__
File “PixivModel.pyc”, line 308, in ParseWorksData
UnicodeEncodeError: ‘ascii’ codec can’t encode character u’u5e74′ in position 4: ordinal not in range(128)
2013-03-18 21:28:30,552 – PixivUtil20130316 – INFO – EXIT
2013-03-18 21:28:30,552 – PixivUtil20130316 – INFO – ###############################################################
file :
http://www.mediafire.com/view/?wkp2gx41gzgdjrp
20130222c don’t have this problem…
This is because you using japanese ui in Pixiv, and in the new version the application expecting the date format in English format.
For time being, set your user settings in Pixiv to use English language.
Thanks for the reply , I’m using Chinese S ui in pixiv.
I will use 20130222c instead…
How to remove expecting the date function
you means remove the dateDiff one? you can’t, except you modify the source code by yourself.
Due to stuff, i lost database. Now downloader wants to check all pictures instead of first five as checkupdatedlimit tells it. Basically, instead of downloading all new images, finding that next five files exist and going to next artist, it checks all images of an artist.
What do?
set
checkUpdatedLimit = 0
and maybe you want to setdaylastupdated = 0
so it will go through all the listed members to rebuild the db.I meant, what to so it would stop after finding that next five files exist and instead of continuing rebuild would go to next listed member?
checkUpdatedLimit
only counted from the DB information (https://github.com/Nandaka/PixivUtil2/blob/master/PixivUtil2.py#L470).If file is exists and have identical size, it will be treated as download successfully (https://github.com/Nandaka/PixivUtil2/blob/master/PixivUtil2.py#L122) so it can update the db.
Thanks for implementing my suggestion! I’ll test the new option asap π So, it works like I imagined, e.g. the number corresponds to how many days before the current date a work is old, before the programs stops downloading from a profile?
Just a little note: the changelog explains the new option but readme.txt not, it could use an update with the next version.
Can you please elaborate on “worksDate < dateDiff" thing?
The idea would be to have a setting in the .ini so that the downloader gets only pictures that were posted X days before the system date. So, value 0 would be no limit, 7 would be only pics that are a week old or newer, 60 only from the last two months, and so on.
The date is from work date, and dateDIff is the number of date diff from today
I tried putting 10 in the datediff but instead of downloading images, it just tells me no more images.
config – http://pastebin.com/HfJsT0Fq
Actually, I just noticed it gives me that error no matter what I do.
Okay, never mind.
Apparently the problem was with the tags I was using (even though I copied them straight from pixiv)
Thanks for the update.
Bravo for the 3rd option !!!