Loading

Thingiverse Downloader

by feilen, published

Thingiverse Downloader by feilen Jun 13, 2011

Featured Thing!

Description

This is a simple (rather simple, was my first dip into Perl) script to download and organize a Thing, placing it's various parts into ./thing/
It also outputs a URL shortcut to the page on thingiverse.

Recent Comments

view all

I used perl because it was the most reccommended for a task, and it doesn't take me long to learn a new language.

And actually before trying to upgrade packages on my machine, I accidentally broke my install of Perl, and 80% of packages failed to install correctly because they required usage of perl...

I agree on not putting it in /usr/bin.

but while a huge amount of people have fled Perl to Python/ruby/name your language here Perl is still a powerful tool, and if they ever finish Perl6 that'd be great.

though if someone makes a good implementation to compile ruby to the parrot virtual machine.

Perl does have it signs of age indeed, but paleo it is not (yet)
I mean it's not like fortran or COBOL ....

It's a perl script, I don't think there's even a way not to share the source code XD

Liked By

view all

Give a Shout Out

If you print this Thing and display it in public proudly give attribution by printing and displaying this tag. Print Thing Tag

Instructions

Download (I don't think it'll work on windows, but maybe with cygwin. The URL shortcuts are Linux-style for the moment)

Syntax:
thingget ||

Example:
To grab the Head of Stephen Colbert (http://www.thingiverse.com/thing:9104)
thingget 9104
thingget thingiverse.com/thing:9104
thingget thingiverse.com/thing:9104

Comments

You must be logged in to post a comment.

winterg on Jun 22, 2011 said:

Kudos for releasing the source code!

feilen on Jun 22, 2011 said:

It's a perl script, I don't think there's even a way not to share the source code XD

Neophyte on Jun 21, 2011 said:

I have finished and uploaded my Windows downloader: http://www.thingiverse.com/thi...

It is an Internet Explorer add-on and you can download a thing by right-clicking on the page and selecting "Download Thingiverse Thing" from the popup-menu.

feilen on Jun 21, 2011 said:

Ah, neat! I don't use IE though :/

Synchron on Jun 14, 2011 said:

great idea. Is Thingiverse would have a api it would be easier...and it would be possible to create a ThingiverseViewer where you can browse,organize,dis/like... things. Would love to see something like this in the future :)

feilen on Jun 15, 2011 said:

Yeah, I would love to see a GUI app, especially one that's platform independent, but I just wanted a simple downloader so I could stop just saving them under the default names, then forgetting what they do.

Neophyte on Jun 14, 2011 said:

Guess what? I had exactly the same idea as you!

Only difference is that the solution I'm working on is for Windows and at this stage for Internet Explorer. The user will right-click on the Thing's page and select "Download Thingiverse Thing" upon which you can select which of the Thing's files you want to download. In the selected location of a
ll your things it will create a folder using the Thing's name where it will save the files.

The right-click code is complete up to the point where it builds a list of files with the original names, together with the Thing's name and URL.

The download code is no problem as I have a few of my own do
wnloading apps.

The only code I must figure out is to pass the download data between the IE plugin and the download app/service. I will probably use .NET remoting for that.

feilen on Jun 15, 2011 said:

Ah, wonderful! I thought I'd have to go and dig out how to do all of this with windows as well. I was actually thinking of making a FF/Greasemonkey extension to use this, but that sounds a lot better.

JelleAtProtospace on Jun 14, 2011 said:

ouch, do go putting things/scripts in /usr/bin. Only root should be able to write there, and only trusted app should live there. Development stuff like this should not live somewhere in $PATH anyway, but if you can't help it, either . source a script that adds your location to to PATH temporarily, or link it to $HOME/bin. $HOME/bin is often already in the PATH, otherwise add it to your PATH in .profile.

Even if it is your own machine and you can do whatever you like, it still pays to not make a mess of it... :)
&
lt;/rant
&
gt;

Oh and perl? Are you aspiring to be a paleo-programmer? ;)
and on topic: not sorting it, or only by by its thingid would be best IMHO. It is not a database you can emulate this way. If you want that, use a database instead.

robinmdh on Jun 24, 2011 said:

I agree on not putting it in /usr/bin.

but while a huge amount of people have fled Perl to Python/ruby/name your language here Perl is still a powerful tool, and if they ever finish Perl6 that'd be great.

though if someone makes a good implementation to compile ruby to the parrot virtual machine.

Perl does have it signs of age indeed, but paleo it is not (yet)
I mean it's not like fortran or COBOL ....

feilen on Jun 14, 2011 said:

The idea is to have them sorted in some way. Just downloading them would mean you'd have to sort them out manually, and I wanted the script to try to figure that out without any user intervention.

And the /usr/bin thing is just my preference, but did you mean 'don't go putting' instead of 'do go putting'?

feilen on Jun 14, 2011 said:

I dunno guys, should it be sorted to /author/thing/ or be sorted to /thing/ with a info.txt in it? The latter is sounding like a better option right now...

Top