最近收到一些插件反馈,对Calibre
桌面版豆瓣插件进行一些简单升级
以前安装文档:https://fugary.com/?p=264
Calibre
电子书管理软件:https://calibre-ebook.com/download
calibre-douban
是Calibre
电子书软件的豆瓣元数据插件
下载地址
项目地址:https://github.com/fugary/calibre-douban
下载地址:https://github.com/fugary/calibre-douban/releases/latest/download/NewDouban.zip
代理下载:https://ghproxy.com/https://github.com/fugary/calibre-douban/releases/latest/download/NewDouban.zip
从release页面下载zip包,然后再calibre
中安装为插件即可。
升级内容
删除了一些无用代码,另外增加功能:
- 增加
gzip
支持,有可能提升一点速度 - 增加随机毫秒延迟,减少被403的几率
- 增加
Cookie
输入框,可以填入浏览器登录后的Cookie
,减少403
配置随机延迟
默认已开启随机延迟,也就是在并发请求详情数据的时候随机sleep
一定的毫秒数,可以关闭:
参考代码
def random_sleep(self, log):
random_sec = random.random() / 10
log.info("Random sleep time {}s".format(random_sec))
time.sleep(random_sec)
Cookie配置
有时候可能我们的IP已经被拦了,这时可以自己登录豆瓣网站,然后把Cookie
复制出来填进插件配置中。
IP
被拦的错误如下:
有异常请求从你的 IP 发出,请 登录 使用豆瓣
用Chrome
或者Edge
浏览器打开https://www.douban.com,点击【登录】进入登录页面,登录成功之后,按F12
打开开发者工具:
从Network
,找到Doc
类型,随便点击一个豆瓣的网址,进入Headers
,找到Request Headers
里面的Cookie
字段,如图:
如果是中文版:
从网络
,找到文档
类型,随便点击一个豆瓣的网址,进入标头
,找到请求标头
里面的Cookie
字段,如图:
找到Cookie:
后面的部分,复制后面的内容,不包含Cookie:
。
到Calibre
插件配置页面填入Cookie
:
然后就可以用用户的身份查询,一般是可以解决403问题。
常见错误
如果又遇到查询失败,可能是这个错误
…你访问豆瓣的方式有点像机器人程序。为了保护用户的数据,请向我们证明你是人类:
因为使用了Cookie
,可以在浏览器中自己点击证明一下,再在calibre
中重新查询即可。