У меня есть объект с CookieJar, который я хочу рассолить.Как рассолить 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. Но есть ли лучший способ?
Wow !! Вопрос звучит как вопрос для работы на кухне. Я поражен именами, используемыми для инструментов :) – shahkalpesh
Вы получили хорошее решение? Если да, напишите. –
@Paul работают как решения Alex's, так и Anurag. Хотя решение Анурага хакерское и быстрое, решение Алекса является более общим и медленным, поэтому я оставлю его в сообществе, чтобы решить, что лучше. – Unknown