豆瓣开发者不完全指南

本文仅用于学习研究之目的,请勿用于其他用途。

豆瓣网关闭了图书、电影等相关的 API 接口。不过我们换一个思路,这些 API
豆瓣自己依然需要用,那我们便可以通过 Fiddler、Charles 等工具抓取豆瓣一些应用正在使用的接口。

豆瓣评分 微信小程序

通过微信小程序“豆瓣评分”的接口分析,我们可以得到:

豆瓣Api Host:https://frodo.douban.com

可用的 apiKey:0ac44ae016490db2204ce0a042db2916

其他可用apiKey:

054022eaeae0b00e0fc068c0c0a2102a

另外,豆瓣小程序的接口还对请求的 header 做的一些验证,我们需要在 header 里面携带:

"Referer": "https://servicewechat.com/wx2f9b06c1de1ccfca/91/page-frame.html"
"User-Agent": "MicroMessenger/"

于是我们就可以通过 Postman 等工具发起请求,获得接口信息。

完整的 cURL 示例:

curl --location --request GET 'https://frodo.douban.com/api/v2/book/rank_list?apiKey=0ac44ae016490db2204ce0a042db2916' \
--header 'User-Agent: MicroMessenger/' \
--header 'Referer: https://servicewechat.com/wx2f9b06c1de1ccfca/91/page-frame.html' \
--data-raw ''

豆瓣 App

另外,对豆瓣 App 抓包发现,api.douban.com 这个 Host 依旧也在使用,并且只验证了 apiKey(POST请求)。

可用 apiKey:

0ab215a8b1977939201640fa14c66bab

cURL 示例:

curl --location --request POST 'https://api.douban.com/v2/movie/imdb/tt6718170' \
--data-urlencode 'apikey=0ab215a8b1977939201640fa14c66bab'

接口文档

接口文档可以参照:

您的赞助将会支持作者创作及本站运维

评论

共27条
  1. 1 2023-04-22 17:52

    https://github.com/JayXon/MoreMovieRatings/issues/5

    可以看看这个讨论吗,感谢

  2. mukti 2023-04-22 18:34

    已回复。

  3. 9200 2023-05-02 14:35

    第一个curl示例好像失效了,能修复一下吗?
    第二个示例能用

  4. mukti 2023-05-03 09:40

    我试了下并未失效,你的请求结果是什么?难道IP对它有影响……

  5. 9200 2023-05-03 12:50

    我是把curl命令转成php来请求的,header也都设置了,返回的结果是{“msg”: “invalid_request_997”, “code”: 997, “request”: “GET \/v2\/book\/rank_list”, “localized_message”: “\u9519\u8bef\u8bf7\u6c42 997”},是不是因为我转成php的原因呢?

  6. mukti 2023-05-08 11:25

    这个可能是因为 header 缺少字段,server会验证,豆瓣接口报错:invalid_request_997

  7. 9200 2023-05-03 17:29

    已经解决了,谢谢大佬指点,感谢感谢。另外问个问题,用这个key请求,会有频率限制吗?

  8. mukti 2023-05-08 11:24

    这个我也不清楚,没有尝试~

  9. sssss 2023-05-07 21:32

    佬,第二个获取电影的我用了提示apikey不可用了啊

  10. mukti 2023-05-08 11:23

    我刚试了,可以用,目前不确定是不是有IP限制,你那收到什么?

  11. 火喵酱 2023-05-08 15:13

    非常感谢这篇文章,key很好用!!

  12. 火喵酱 2023-05-08 15:50

    豆瓣读书好用,但是电影返回109,好像是key不能用

    invalid_credencial2″,”code”:109,

  13. mukti 2023-05-09 14:16

    我用的示例 cURL 是没有问题的,不知道你是否也是这个接口,可以发出来看下。

  14. mukti 2023-05-09 14:22

    你的网站好有趣!

  15. 火喵酱 2023-05-09 21:24

    噗,我找到了一个第三方的api,现在不用官方的那个了。你说没问题那可能是我操作不对。我查了下文档写的109是“密钥无效或已过期”不管他啦~qaq

  16. 小明 2023-05-12 16:30

    豆瓣查询接口是那个呢

  17. mukti 2023-05-12 17:01

    好像并没有这样的接口,可以通过搜索结果页面爬取

  18. 秃三炮 2023-08-10 16:42

    豆瓣日历有API 吗?

  19. mukti 2023-08-10 19:41

    这个应该没有叭…

  20. E 2023-09-05 17:22

    大佬,我用 taro 开发小程序,发送请求后报错了:VM14 asdebug.js:1 Refused to set unsafe header “User-Agent”(env: macOS,mp,1.06.2307260; lib: 3.0.1)
    但是用 postman 没问题,请问这个怎么处理呢?

  21. mukti 2023-09-05 19:04

    手动改下header试试呢?我也没有遇到过

  22. 1 2024-03-09 15:25

    第一个好像只能查rank_list,别的功能不开放啊

  23. mukti 2024-03-09 15:47

    都有的

  24. AI 2024-08-25 21:55

    都用不了啊,不知道咋弄了

发表评论


TOP