jsvine / waybackpack

Download the entire Wayback Machine archive for a given URL.
MIT License
2.8k stars 189 forks source link

AttributeError: 'NoneType' object has no attribute 'status_code' #80

Open jasonkarns opened 2 months ago

jasonkarns commented 2 months ago

Given:

$ waybackpack --uniques-only --no-clobber --follow-redirects --ignore-errors -d StevenHarman 'http://feeds.stevenharman.net/stevenharman' --from-date=20090220053814

I get:

INFO:waybackpack.session: HTTP status code: 504
INFO:waybackpack.session: Waiting 1 second before retrying.
INFO:waybackpack.session: Waiting 1 second before retrying.
INFO:waybackpack.session: HTTP status code: 503
INFO:waybackpack.session: Waiting 1 second before retrying.
INFO:waybackpack.session: Waiting 1 second before retrying.
INFO:waybackpack.session: HTTP status code: 503
INFO:waybackpack.session: Waiting 1 second before retrying.
INFO:waybackpack.session: Waiting 1 second before retrying.
INFO:waybackpack.session: HTTP status code: 503
INFO:waybackpack.session: Waiting 1 second before retrying.
INFO:waybackpack.session: Maximum retries reached, skipping.
Traceback (most recent call last):
  File "/opt/homebrew/bin/waybackpack", line 8, in <module>
    sys.exit(main())
             ^^^^^^
  File "/opt/homebrew/lib/python3.11/site-packages/waybackpack/cli.py", line 130, in main
    snapshots = search(
                ^^^^^^^
  File "/opt/homebrew/lib/python3.11/site-packages/waybackpack/cdx.py", line 27, in search
    if res.status_code == 200:
       ^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'status_code'
jsvine commented 2 months ago

Based on the line numbers in the stack trace, my hunch is that you're on version 0.6.1 or earlier. Version 0.6.2 should handle that conditional more gracefully. Let me know if not.