Danbooru Client
Graphics
Score 68%
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:

7 years ago

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.

Soru

3 years ago

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!

Report

RedSparrow

4 years ago

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

Report

RedSparrow

4 years ago

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.

Report

einar77

4 years ago

Try installing the development package "kdelibs5-dev".

Report

RedSparrow

4 years ago

Thank you so much! :)

Report

blurymind

4 years ago

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

Report

einar77

4 years ago

Can you outline your problem exactly?

Report

blurymind

4 years ago

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

Report

blurymind

4 years ago

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

Report

einar77

4 years ago

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).

Report

blurymind

4 years ago

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

Report

einar77

4 years ago

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

Report

blurymind

4 years ago

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 :(

Report

einar77

4 years ago

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.

Report

mrbit

4 years ago

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

Report

einar77

4 years ago

Done.

Report

Jestern

4 years ago

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.

Report

einar77

4 years ago

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.

Report

Jestern

4 years ago

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.

Report

L-four

4 years ago

This works for me on archlinux:
python2.7 $(which danbooru_client)

Report

initlove

5 years ago

interesting, try this

Report

Jestern

5 years ago

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.

Report

einar77

5 years ago

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.

Report

Jestern

5 years ago

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.

Report

einar77

5 years ago

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

Report

7 years ago

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.

File (click to download) Version Description Filetype Packagetype License Downloads Date Filesize OCS-Install DL
Details
version
1.1.1
updated Jan 15 2013
added Oct 25 2009
downloads today
0
page views today 4