Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Downloading from multiple members fails if one id does not exist #147

Closed
greyspammer opened this Issue Sep 26, 2016 · 6 comments

Comments

Projects
None yet
3 participants
@greyspammer
Copy link

greyspammer commented Sep 26, 2016

When you enter a bunch of member ids to download from, and one of these does not exist (e.g. because the account has been deleted), PixivUtil2 will print a (rather cryptic) error message:

Member Url: http://www.pixiv.net/member_illust.php?id=9999&p=1
Traceback (most recent call last):
  File "PixivUtil2.py", line 321, in process_member
  File "PixivModel.pyc", line 52, in __init__
  File "PixivModel.pyc", line 105, in ParseImages
AttributeError: 'NoneType' object has no attribute 'findAll'
Error at process_member(): (<type 'exceptions.AttributeError'>, AttributeError("'NoneType' object has no attribute 'findAll'",), <traceback object at 0x04115800>)
Dumping html to: Error page for member 9999.html
Traceback (most recent call last):
  File "PixivUtil2.py", line 1875, in main
  File "PixivUtil2.py", line 1656, in main_loop
  File "PixivUtil2.py", line 1318, in menu_download_by_member_id
  File "PixivUtil2.py", line 321, in process_member
  File "PixivModel.pyc", line 52, in __init__
  File "PixivModel.pyc", line 105, in ParseImages
AttributeError: 'NoneType' object has no attribute 'findAll'
press enter to exit.

This ends the entire download of all member ids, even if the remaining ones do exist. It is up to the user to identify the problem, remove the member id that does not exist and start the process again with the remainder of the ids.

I propose to:

  1. Log the error and try to continue the download if there are member ids left to try.
  2. If the process needs to be interrupted, print a more informative message and allow the user to acknowledge the error and then resume the download (see 1.)
@NHOrus

This comment has been minimized.

Copy link
Contributor

NHOrus commented Sep 26, 2016

Please, elaborate how do you invoke PixivUtil with multiple members. From command line? With list.txt? From terminal interface, download member?

@greyspammer

This comment has been minimized.

Copy link
Author

greyspammer commented Sep 26, 2016

Terminal interface, option '1' (download by member id), then enter a couple of ids.

@Nandaka

This comment has been minimized.

Copy link
Owner

Nandaka commented Sep 26, 2016

can you upload the 'Error page for member 9999.html' page?

By right it should handle deleted member, unless they change something.

@greyspammer

This comment has been minimized.

Copy link
Author

greyspammer commented Sep 26, 2016

Nandaka added a commit that referenced this issue Sep 26, 2016

@Nandaka

This comment has been minimized.

@greyspammer

This comment has been minimized.

Copy link
Author

greyspammer commented Sep 29, 2016

Ok, I tried several ways to break it again, but it just keeps working. Looks like you fixed it.

Xundi007 added a commit to Xundi007/PixivUtil2 that referenced this issue Oct 20, 2016

Nandaka added a commit that referenced this issue Mar 4, 2017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.