File "/home/morgan/.virtualenvs/morgan/src/python-pinboard/pinboard.py", line 197, in __init__
    self["last_updated"] = self.last_update()
    File "/home/morgan/.virtualenvs/morgan/src/python-pinboard/pinboard.py", line 289, in last_update
    PINBOARD_API).firstChild.getAttribute("time")
    File "/home/morgan/.virtualenvs/morgan/src/python-pinboard/pinboard.py", line 273, in __request
    status = int(raw_xml.headers.status)
    ValueError: invalid literal for int() with base 10: ''


raw_xml.header.status returns an empty string which throws a ValueError exception when casting to an integer.

I used pdb and inspected the response

    (Pdb) raw_xml.headers.status
    ''
    (Pdb) raw_xml.info().status
    ''
    (Pdb) raw_xml.msg
    'OK'
    (Pdb) raw_xml.code
    200

Will raw_xml.code work?  Can't test Python3 to see if the AttributeError exception would be handled.  Otherwise with that adjustment that code runs with my pinboard django sync.