尝试使用requests_cache来利用猴子修补的会话,以维护响应的持久化存储,Rauth OAuth1Session似乎玩得并不好。
假设已经在别处设置了密钥...
import requests
import requests_cache
requests_cache.install_cache('test-cache', backend='sqlite', expire_after=300)
from rauth.session import OAuth1Session
session = OAuth1Session(consumer_key=CONSUMER_KEY,
consumer_secret=CONSUMER_SECRET,
access_token=ACCESS_TOKEN,
access_token_secret=ACCESS_SECRET)
r = session.get("http://www.paperbackswap.com/api/v2/index.php", params={"RequestType": "MemberData"});结果如下:
> File "run.py", line 5, in <module>
> from rauth.session import OAuth1Session
> File "/Users/jasharmon/src/oauth_1.0a_tool/venv/lib/python2.7/site-packages/rauth/__init__.py", line 22, in <module>
> from .service import OAuth1Service, OAuth2Service, OflyService
> File "/Users/jasharmon/src/oauth_1.0a_tool/venv/lib/python2.7/site-packages/rauth/service.py", line 10, in <module>
> from rauth.session import OAuth1Session, OAuth2Session, OflySession
> File "/Users/jasharmon/src/oauth_1.0a_tool/venv/lib/python2.7/site-packages/rauth/session.py", line 28, in <module>
> class RauthSession(Session):
> File "/Users/jasharmon/src/oauth_1.0a_tool/venv/lib/python2.7/site-packages/rauth/session.py", line 29, in RauthSession
> __attrs__ = Session.__attrs__ + ['service']
>AttributeError: 'function' object has no attribute '__attrs__'发布于 2014-09-30 03:41:44
仅供参考,这最终是因为requests_cache使用了λ到猴子补丁。修复位置:https://github.com/reclosedev/requests-cache/issues/28
https://stackoverflow.com/questions/26091523
复制相似问题