У меня есть объект с CookieJar, который я хочу мариновать.
Однако, как вы, наверное, все знаете, засолите удушающие объекты, которые содержат блокирующие объекты. И по какой-то ужасной причине CookieJar имеет объект блокировки.
from cPickle import dumps
from cookielib import CookieJar
class Person(object):
def __init__(self, name):
self.name = name
self.cookies = CookieJar()
bob = Person("bob")
dumps(bob)
# Traceback (most recent call last):
# File "<stdin>", line 1, in <module>
# cPickle.UnpickleableError: Cannot pickle <type 'thread.lock'> objects
Как мне сохранить это?
Единственное решение, которое я могу придумать, - это использовать FileCookieJar.save и FileCookieJar.load для объекта stringIO. Но есть ли лучший способ?