4pr0n / ripme

Downloads albums in bulk
MIT License
918 stars 204 forks source link

Inkbunny.net #471

Open rautamiekka opened 7 years ago

rautamiekka commented 7 years ago

As per request (https://github.com/4pr0n/ripme/issues/8#issuecomment-284305212) I opened this ticket since I'm somewhat familiar with Inkbunny. You'll notice the code copypastes can be irrelevant to each other logically speaking, but I didn't write this text from one sitting so I had different tabs open at times.

Unlike DeviantArt, Inkbunny makes ripping easier: 1) You can use parameters right in the address for many things through the public API, so it might not be necessary to receive and parse HTML, but the rest of this ticket assumes use of HTML regardless of the API. Reference (it's a long list !)=https://wiki.inkbunny.net/wiki/API 2) The user ID integer is reused across the site, but getting the ID means parsing of addresses since the username is commonly shown when referring to ppl, with the ID used in code. Addresses: 2.1) User profile/overview=inkbunny.net/*** where *** is the username. The username is case-insensitive but follows the spelling during registration. 2.2) User's gallery if applicable=inkbunny.net/usergallery_process.php?user_id=XXX where XXX is the user ID integer 2.3) User's list of pools (folders) if applicable=inkbunny.net/poolslist.php?user_id=XXX where XXX is the user ID integer. Each pool is clearly named in code, but the outputted HTML itself is a total mess. Copypasted below. 2.4) View a pool=inkbunny.net/poolview_process.php?pool_id=XXX where XXX is the pool ID 2.5) User's favs if applicable=inkbunny.net/userfavorites_process.php?favs_user_id=XXX where XXX is the user ID integer. The HTML is extremely simple here, there's hardly anything to be done to get the upload ID, the necessary part's copypasted below. 2.6) View an upload=inkbunny.net/submissionview.php?id=XXX where XXX is the upload ID. 2.7) Downloading is a more complex issue however, as Ib uses caches across the world by your IP address, so USA will have a different cache address from (the whole ?) Europe which uses a Netherlands one. Although the text for the link always reads Download (new tab) you're not getting the whole link just by that, so you need to look at the complete HTML line, shown after this numbered list. 2.8) Netherlands cache download address=https://nl.ib.metapix.net/files/full/ZXZX/XX_THE_FILENAME_AS_UPLOADED.EXTENSION where ZXZX seems to be a 4-digit shorter version of the upload ID XX. 3) As far as I can see, uploads are always downloadable (I see no option to toggle that in my uploads) as long as a mirror is up, but the uploader can and usually makes guest (public) access disabled when the content reaches Mature (non-sexual nudism and such) or Adult (everything else). It could be, though, that guest access is auto-disabled in the other cases. 4) I had 2 ppl in USA try a direct Netherlands cache link and it worked perfectly, so if you know the full link you don't need to use the website for it.

Copypastes: 2.3:

<td id='pool_21124' style='width: 296px; padding-top: 10px; padding-bottom: 10px; border-bottom: 1px solid #eeeeec;'>
                            <div style='font-family: Trebuchet MS; font-size: 12pt; word-wrap: break-word; width: 296px;'>
                                <a href="poolview_process.php?pool_id=21124">Comics</a>
                            </div>
                                                            <div style='margin-top: 5px; color: #666666; font-size: 10pt; word-wrap: break-word; width: 296px;'>
                                    All the comics put together.<br /><br />                                </div>
                                                        <div style='margin-top: 10px; color: #999999; font-size: 8pt;'>
                                14 submissions                          </div>
                                                    </td>

2.5:

<a   href='submissionview.php?id=1293622'

2.7:


<a target='_blank' href='https://nl.ib.metapix.net/files/full/1613/1613856_rautamiekka_big_news_by_pony_berserker-d6d628q__finnish.png' style='border: 0px; color: #888888;'><img src='https://nl.ib.metapix.net/images77/fullsize/fullsize.png' style='border: 0px; vertical-align: text-bottom; _vertical-align: middle; padding: 0 !important; margin: 0 0 0 3px !important;' /> <span style='border-bottom: 1px dotted #aaaaaa;'>Download (new tab)</span></a><div style='display: inline-block; position: absolute; right: 20px; margin-top: -4px; font-size: 8pt; width: 300px; text-align: right;'>```
GreenReaper commented 8 months ago

Not sure this will be implemented here (it looks like https://github.com/RipMeApp/ripme/issues/1930 is the new place) but files are also available from the main server at the same URLs (that is where the caches get if from), which may be more suitable than a cache that has limited bandwidth and storage.

rautamiekka commented 8 months ago

This is ancient and both reincarnations are long dead (especially this one), I use gallery-dl instead.

Both should be archived IMO.