gpt4 book ai didi

python - 如何在Python中序列化jira问题对象?

转载 作者:太空宇宙 更新时间:2023-11-03 15:35:57 24 4
gpt4 key购买 nike

我正在使用jira Python library用于从 jira 服务器获取问题。为了减少服务器负载和网络流量,我想以序列化形式将 search_issues() 结果存储在本地。如果大多数问题都可以在本地获得,我只需要查询最近更新的这些问题。

不幸的是我遇到了一个问题,似乎 jira 问题是不可picklable的。在调用 dumps() 解决问题时,我总是收到以下错误:

_pickle.PicklingError: Can't pickle <class 'jira.resources.PropertyHolder'>: attribute lookup PropertyHolder on jira.resources failed

我还尝试了其他 Python 序列化方法(例如 marshal、dill、json),但是所有这些方法的序列化都失败(这并不奇怪,因为 dill 和 json 似乎依赖于 pickle)。

知道如何在 Python 中序列化 jir​​a 问题吗?

最佳答案

jira-cache 包对我有用。它可以缓存问题列表并加载它。

https://pypi.org/project/jira-cache/

示例:

def get_issues():
jira = JIRA(auth)

if not cache.exists():
issues = jira.search_issues('project = BLAH')

cached = CachedIssues(issues)
cached.dump(open('issue_cache.json', 'w'))
else:
issues = CachedIssues.load(open('issue_cache.json'))

return issues

关于python - 如何在Python中序列化jira问题对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42509348/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com