So much for “release early” eh? I finally, after a few requests, got around to putting up the code I used to sync my del.icio.us bookmarks with Scuttle. (See: Why Scuttle is neat.)
Go ahead and grab delisync and please make it better, because while it sort-of works, it also sort-of sucks… And I’d like a better version.
This code assumes you have a local Scuttle install, if not, change the code. (You should be able to point it at Scuttle.org or any Scuttle install where you have an account.) Also, you will have to hardcode your username/password’s for del.icio.us and Scuttle…
All of this magic is really possible because Scuttle supports (most of) the del.icio.us API, so in theory you could do things in reverse, or upside down, or 3 ways from Tuesday, whatever that means. If only all of the “social bookmark” sites had API’s… (At least one other has told me they are “working on it” or something like that…)
Let me know how it goes. I’m not completely against improving it, but I think others may be better suited than me to do so… It’s GPL‘d so have at it.
(See Also: Scuttle at Sourceforge.)
8 replies on “delisync for Scuttle”
When you say that in theory you could do things in reverse, do you mean that I could synchronize my del.icio.us account with my Scuttle account using this code? In other words, could I use Scuttle as my main bookmarking site and have this program back it up to del.icio.us? How much hacking would be necessary to make it do that?
Nelson, it should just be a matter of swapping the URL’s and username/passwords in the appropriate place. Since they use a common API, it should be that easy.
Pete, nice work! This script works pretty well! I made a couple of changes (added “extended” attribute functionality and made some changes for modularization) and sent it off to you. Feel free to use or ignore any or all of it. :-) Thanks again for a great tool!
Hmmm. where’s the delicious.xml file it refers to?!
You can create the delicious.xml file via a cron tab as explained in this post, or add code to the PHP script to do it. (Look at both versions of the PHP script.)
Given that in delisync-1.5.1 you do this:
$addurl = sprintf ("http://%s:%s@%s/scuttle/api/posts ...
then this isn’t actually reversable, and toDN should probably be the full URL of your scuttle installation.
Phil, I suppose I should take a closer look at Omar’s code. To be honest, I’m still running my original version and it’s doing (more or less) what I need.
Please feel free to make any changes and post it yourself or send it back to me and I’ll post it here. (Yes, I’m a master of the LazyWeb!)
OK, will also make the change to use fsockopen instead of fopen because lots of hosts have it turned off.