用 Delicious Library 给豆瓣添加收藏

jjgod

2007-12-29 15:22:39 来自: jjgod

前段时间做的一个小 hack,Mac 用户也许会喜欢 :)

就是用 Delicious Library 的条形码扫描功能给自己的豆瓣添加收藏。

有图有真相:

http://jjgod.org/document/images/douban-dl-importer.png

简单的说,因为 Delicous Library [1] 有条形码扫描功能,但是它根据条形码来导入的数据来源却只能是 Amazon,而根据 vgod 的发现 [2], DL 每次成功扫描到一条新的条形码,都会往

~/Library/Application\ Support/Delicious\ Library/Scanned\ UPCs\ Log.txt

里写入一条新的数据。于是今天做的这个东西,就是用 kqueue (2) 来监视这个文件的 event,只要一收到写入的 event,就调用一个 Python 脚本来提交 douban 的书籍收藏请求 (“我读过这本书”),这个 Python 脚本的基本原理是:

1. 用一个当前路径下的叫 prev.txt 的文件和当前的 ~/Library/Application\ Support/Delicious\ Library/Scanned\ UPCs\ Log.txt 进行 diff -u,获取结果。

2. 找出 (1) 中结果行首为 + 的行,把这些行后面的内容作为条形码。

3. 将条形码发送到 http://www.douban.com/isbn/${isbn}/?interest=collect 这个格式的 URL,通过 urllib2。

4. (3) 之前其实还要调用 cookielib 登录,不过只要第一次登录后,就可以在本地存放一个 cookies.lwp 文件记录下 cookie,下次调用这个 Python 脚本时就直接载入 cookie.lwp,不用重新登录。所以这个脚本执行得很频繁也没关系。

5. 把 Scanned UPC Log.txt 复制到 prev.txt,这次请求发送全部完成。

[1]: http://www.delicious-monster.com
[2]: http://blog.vgod.tw/2007/03/07/用macbook內建的isight攝影機快速建立網路書櫃/

11人喜欢
  • NullPointer

    2007-12-29 15:32:35 NullPointer (人和葡萄都在阳光和雨水中成熟了)

    大赞。可惜我用不上,是不是把图片中的条形码转换成数字的关键一步是Apple上的一个叫Delicious Library的软件做的?
        
    想写一段代码先识别黑白条纹区域,然后转换成数字..就是数字图像处理的基本功得先复习……

  • jjgod

    2007-12-29 17:42:03 jjgod

    对,虽然有开源的 Barcode Scanner 实现,但都不如 Delicious Library 做得好。

  • NullPointer

    2007-12-29 17:56:53 NullPointer (人和葡萄都在阳光和雨水中成熟了)

    发现了这个,貌似不错。
    Yet Another Webcam Barcode Scanner
    http://blog.kevinhoyt.org/2007/01/21/yet-another-webcam-barcode-scanner/

    楼主要是有兴趣,把你现成的代码改改,可以做出一个通用的了:)

  • jjgod

    2007-12-29 21:19:33 jjgod

    你试过了吗?我试了好几本书,一本它都扫不出来。

  • IronMick-tt8

    2007-12-30 12:30:47 IronMick-tt8 (东濠涌二少)

    http://www.getlibra.com/
    这个软件几乎是“复制”了Delicious Library(界面,功能等),不过倒是免费。jjgod说到这个扫描质量问题,才让我动起试验他的念头,不过结果很让人失望,摆弄了10分钟,才成功扫描出一个。Delicious Library就好多了。那个jjgod的hack能够共享一下代码吗?想学习一下。

  • jjgod

    2007-12-30 17:18:32 jjgod

    可以,不过 Windows 下没有 kqueue,你要自己改成用 IOCP 或者 select 或者 Windows 提供的一些异步消息实现。

  • IronMick-tt8

    2007-12-31 02:23:31 IronMick-tt8 (东濠涌二少)

    没问题,我也用mac的。

  • jjgod

    2007-12-31 06:06:43 jjgod

    ok, 你单独联系我吧,可以通过 Google Talk,地址在我的 blog 上。

  • JunoMay.com

    2008-01-13 16:34:55 JunoMay.com (豆列更新中)

    有想法,先留个脚印,回头看代码

  • 四偈

    2008-03-19 11:00:43 四偈 (此豆瓣已荒废,仅作留档。)

    要是能导入豆瓣里的资料进delicious library就牛了。

  • Robin

    2008-03-21 23:53:07 Robin (一个人的第6,7天)

    晕啊!我用了三年这个软件,好久没开了,现在居然每次进去一搜书就报错,删除一切属性,重装都没用。难道是SN被封了?

  • Robin

    2008-03-22 00:04:35 Robin (一个人的第6,7天)

    <<Uncaught system exception: signal 10>>

    Would you like to submit a bug report?

    报错的信息。
    系统是10.5.2
    1.2G PPC 768MHz iBook G4
    有高手看看是怎么回事么?

  • 夜礼服假面条

    2008-05-27 22:54:12 夜礼服假面条

    具體怎麼操作??看了很久沒有明白。。今天突然看到dl更新了第二代了 好東西阿

  • Chaos三号小分队队长

    2008-06-01 22:10:59 Chaos三号小分队队长 (宅的快发霉了)

    这个也太专业了 完全看不懂。。

  • 瓦力

    2008-11-10 22:11:38 瓦力 (决定努力学习英格丽事)

    这个是像超市那样的么?



    ----------------------------------------------------------
    14楼 2008-06-01 22:10:59 Chaos三号小分队队长 (London)
      这个也太专业了 完全看不懂。。
    ----------------------------------------------------------


    @Chaos三号小分队队长
    你也说出了我的心声啊啊.

  • 瓦力

    2008-11-10 22:12:45 瓦力 (决定努力学习英格丽事)

    这个是像超市那样的么?



    ----------------------------------------------------------
    14楼 2008-06-01 22:10:59 Chaos三号小分队队长 (London)
      这个也太专业了 完全看不懂。。
    ----------------------------------------------------------


    @Chaos三号小分队队长
    你也说出了我的心声啊啊.

  • Tiger Tigris

    2009-02-09 13:35:48 Tiger Tigris (疼痛短促如死 道路漫长)

    Delicious library 40刀啊...

  • rio

    2009-06-15 22:10:53 rio

    jjgod, 能够把itunes library的东西直接抛到豆瓣吗?

  • Bigteeth

    2010-01-01 23:55:16 Bigteeth (林中路)

    2008-03-19 11:00:43 四偈 (此豆瓣已荒废,仅作留档。)

    要是能导入豆瓣里的资料进delicious library就牛了。

    不知道实现的难度如何⋯⋯但是既然可以调用亚马逊的api,是不是也能用豆瓣的呢,那就太赞了。

  • linsk

    2010-06-30 10:58:14 linsk (豆瓣挂了...叫你不放App)

    mark

  • 2010-07-20 18:18:37 豆根儿

    期待高人出现啊 ,“豆瓣里的资料进delicious library”


这个小组的插件也喜欢去  · · · · · ·

Firefox
Firefox (20102)
邀请码分享
邀请码分享 (35282)
Google      Chrome
Google Chrome (19781)
Twitter
Twitter (29679)
爱饭否
爱饭否 (13827)
Amazon Kindle
Amazon Kindle (19978)