Danbooru Client

Graphic Apps

Source i (link to git-repo or to original if based on someone elses unmodified work):

Add the source-code for this project on opencode.net

8
Become a Fan
7.0

Available as/for:
Description:
Danbooru Client is an application to access Danbooru-based image boards (http://en.wikipedia.org/wiki/Imageboard#Danbooru-style_boards). Those boards offer a REST and POST API which is used by this program.

Features:

- Connect to any Danbooru board (three predefined)
- Download up to 100 images with selectable tags;
- Repeat query over mulitple pages;
- Download or view images with the KDE preferred image viewer;
- Download pools (on boards that support it);
- Tag semantically the images using Nepomuk.

Requirements:

- PyQt (at least version 4.5)
- PyKDE4 (from KDE SC 4.7 RC2 or newer)
- (optional) Nepomuk
- Python (at least version 2.5)

Installation:

Although this is a PyKDE4 application, it uses CMake to do its work. So this means that you'll need a working compiler and the KDE headers installed (even though they won't be even touched).
Then, follow the steps:

- unpack
- cd to the source directory
- mkdir build; cd build
- cmake -DCMAKE_INSTALL_PREFIX=`kde4-config --prefix` ../
- make
- make install as root (or via sudo)

Known issues:

- Empty cells appear if you don't fill all the rows
- Danbooru API wrapper is not complete
- Sometimes jobs stall and it is impossible to fetch more pages
- Pool functionality removed, pending rewrite

Future plans:

- Setting wallpapers with D'n'D to Plasma
- Tag auto completion

If you have specific suggestions, let me know.

I have been programming for a while, but this is my first proper GUI and KDE application. Comments are welcome.
Last changelog:

1.1.1
- Critical fix: Install ui files
- Use CMake macros from kdelibs (future-proofing for 4.10 when it will be out)
1.1
- Full Python3 support
- When connecting, posts are automatically retrieved
- Pool lists are now downloaded immediately, and the button now fetches more results (UI needs improvement)

1.0.4
- Further fixes for Python 3 compatibility (but it doesn't work yet, UI files need to be generated at build time)
- Rework UI again
- KWallet support for passwords (working for yande.re, danbooru.donmai.us, konachan.[com|net])

1.0.3
- Fixes for Python 3 compatibility
- "Apply" works again with configuration
- Reworked internal XML parsing, pools should work again
- Support for tag blacklists and maximum rating in pool downloads

1.0.2
- UI adjustments

1.0.1
- Fix a critical bug where the OK button for connecting was not shown

1.0.0
- Clicking on an image now displays the image in the preferred viewer
- Context menu for downloading, viewing and copying image links
- Connection modal dialog removed, now an integrated widget
- Some improvements in the Nepomuk handling

0.9.9
- Correctly reset display / tags when connecting more than once
- Add support in the backend to report errors when downloading (not plugged in the UI yet)

0.9.8
- Add the possibility of hiding / showing the tag dock

0.9.7
- Fixed yet another import problem

0.9.6
- Fixed an issue where build system did not install some files

0.9.5
- Support for pools is back!
- New pool interface, using a dock in the main window: let me know if the default size is acceptable
- Known issue: "next page" is enabled when viewing pools (should be disabled) and in that case clicking it yields completely different results
- Currently pools do not honor blacklisting and rating limits, let me know if these should be enforced

0.9
- Massive internal adjustments, resulting in more maintainable code
- Danbooru API completely revamped and made simpler
- Tags have a dedicated widget
- Fetching now gets real related tags
- Fixed Nepomuk tagging
- Updated default URLs
- Requires PyKDE4 from KDE SC 4.7 RC2 or newer

0.8.1
- Minor improvement on the action dialog
- Remove a couple errors in the code

0.8
- Similar tags showed while browsing images
- Support for tag retrieval
- Better integration of Nepomuk
- Ability to search by similar tags
- Reworked action dialog

Most of the above has been adapted by a patch originally sent by Yuen Hoe Lim. Thanks!

0.6.1
- Website checking is now asynchronous
- Fixed a random crash that would happen when downloads finished (only affected KDE SC 4.4)

0.6
- Switched API from JSON to XML (better compatibility)
- Support for pools (only the first page at the moment) - notice that it will not work with moe.imouto.org as they don't implement the API properly
- Tag blacklists now are also used to filter out posts, i.e. if tag FOO is blacklisted, posts with tag FOO will not be downloaded

0.5.1
- Fetch post dialog reworked (please give feedback)
- Addition of default rating: now you can configure the default rating for fetching posts

0.5
- Major code refactoring
- Support for pagination: the same query can be spread across multiple pages (like browsing the actual image board)
- Support for translations: if you are a translator, you can find the .pot file in the po directory of the archive. Please send me translations, and I'll make them available.

0.4.1
- Fix a bug that completely crippled showing thumbnails
- Minor code optimization

0.4
- Batch download (asynchronous)
- Fetching posts is now asynchronous as well
- Fixed an installation problem (the logo would get installed in the wrong location)
- Support fetching by rating (Safe, Questionable or Explicit)

0.2
- Download of the thumbnails is asynchronous (but queued)
- Internal adjustments to API wrapper
- Minor bugs fized

0.1
First public release.


Ratings & Comments

46 Comments

Soru

Hello, I tried to compile Danbooru Client but I failed. Could someone help me by checking this log? http://paste.kde.org/ptwwbfecv/xqpwv4 Thanks!

RedSparrow

Could somebody share EXACT ubuntu deps? Nobody likes to hunt dependencies :)

RedSparrow

I still can't get this to compile have PyQt and all deps installed but I still get this message. http://pastebin.com/jQxsLRJe Kubuntu 12.10.

einar77

Try installing the development package "kdelibs5-dev".

RedSparrow

Thank you so much! :)

blurymind

can you please create a PPA for ubuntu quantal^ please. This is impossible to compile. Impossible

einar77

Can you outline your problem exactly?

blurymind

sorry I forgot to install the kde sdk library . Might be worth including an apt-get install line in the readme file- for ubuntu users who might be interested in compiling this. Its a bit hard to gather the libraries from synaptic, considering their naming varies. Btw check out http://code.google.com/p/imgbrd-grabber/ its another danbooru app that runs on linux, its free and has much more features.. However its super unstable, which is a shame :( But it works. I wish I could compile its latest version- the linux build at the website is a bit older than its windows equivalent. The source code is available for download with svn

blurymind

one thing that his app has over your is : 1. You can just run it and look through images without the need to register at the boards. 2. It has a much greater number of board to search through out of the box. 3. Batch downloader with ability to specify how the files are named

einar77

Quote:

1. You can just run it and look through images without the need to register at the boards.
It is the same in Danbooru Client. Username and password are optional (as the text in the edit boxes says) Quote:
2. It has a much greater number of board to search through out of the box.
I need people to provide me with links, as I put i only the ones I know and visit semi-regularly (and some, like Danbooru, just broke their API...). Quote:
3. Batch downloader with ability to specify how the files are named
As In templates for download? This is possibly doable, just a not high in my TODO list (currently focusing on making the UI better).

blurymind

no I mean specifically multiple selecting the thumbnails and then hitting a "download selected" button

einar77

You can do that, there's the batch download facility. As far as I know it works.

blurymind

ok it does do batch downloading but your readme file with the source says that it doesnt. I tried it with the list in the other program and most websites didnt work at all. The popular big ones: chan.sankakucomplex.com gelbooru.com safebooru.org after trying some of them, the client refused to let me paste text in the add more danbooru's urls :(

einar77

They only work if they use the standard Danbooru API. Gelbooru for sure AFAIK has another type of API. Which means that I'll have to make some internal adjustments to support them.

mrbit

Hi, please add https://aur.archlinux.org/packages.php?ID=33181 for Archlinux. Thanks

einar77

Done.

Jestern

Nice to see a new version. But it doesn't run on my system it gives: Traceback (most recent call last): File "/usr/bin/danbooru_client", line 30, in <module> import mainwindow File "/usr/lib/python2.7/site-packages/danbooru/mainwindow.py", line 42, in <module> import preferences File "/usr/lib/python2.7/site-packages/danbooru/preferences.py", line 26, in <module> from PyQt4.QtCore import QStringList, QSize, QRegExp ImportError: cannot import name QStringList I'm using Archlinux by the way.

einar77

You're using Python 3, I assume, which uses the version 2 API, which wraps QStringList to a normal list. As the code in git is in a *real* state of flux, I'll have to cook up a patch for you. Ping me in a few days if I don't respond.

Jestern

Yeah, i have Python 3 installed, but, i have Python 2 too. Danbooru-client has been working until this new release with both versions installed. I will try to build it in a clean install and see if there is a problem with my system. Cheers.

L-four

This works for me on archlinux:

python2.7 $(which danbooru_client)

initlove

interesting, try this

Jestern

Firts of all, thank you for your awesome work, I use it every week. When i try to compile i receive this error during make: Traceback (most recent call last): File "/usr/share/apps/cmake/modules/PythonCompile.py", line 4, in <module> sys.exit(py_compile.main()) File "/usr/lib64/python2.7/py_compile.py", line 162, in main compile(filename, doraise=True) File "/usr/lib64/python2.7/py_compile.py", line 106, in compile with open(file, 'U') as f: IOError: [Errno 2] No such file or directory: '/home/jestern/danbooru-client-0.9.5/danbooru/ui//ui_poolwidget.py' make[2]: *** [compile_python_files] Error 1 make[1]: *** [danbooru/ui/CMakeFiles/compile_python_files.dir/all] Error 2 make: *** [all] Error 2 Greetings.

einar77

Try downlooading 0.9.6 and see if it fixes the issue for you. I accidentally forgot to change some build system configuration with 0.9.5.

Jestern

Now it compile but i'm getting this error when i execute danbooru_client in konsole: Traceback (most recent call last): File "/usr/bin/danbooru_client", line 30, in <module> import mainwindow File "/usr/lib64/python2.7/site-packages/danbooru/mainwindow.py", line 45, in <module> import pooldialog ImportError: No module named pooldialog Tahnk you again.

einar77

Please download 0.9.7, I should have fixed it there. Thanks for reporting!

Pling
0 Affiliates
Details
license
version 1.1.1
updated
added
downloads 24h 0
mediaviews 24h 0
pageviews 24h 5

Other Graphic Apps:

kimagesorter
korobAn
last update date: 14 years ago

Score 5.0

Pynocchio
MStuttgart
last update date: 6 years ago

Score 6.5

PhotoKit
novesky
last update date: 12 years ago

Score 6.1

QVV Image Viewer
cade
last update date: 15 years ago

Score 5.7

webshots
salvaste
last update date: 20 years ago

Score 5.0

Limoo Image Viewer
brdn25
last update date: 11 years ago

Score 6.8



System Tags