必须使用 Java 21 及以上版本,低版本无法运行;部分站点 ripper 已失效,如 twitter(需适配 X)和 deviantart;站点改版会导致 ripper 随时失效,需关注 issue 或自行更新
brew install --cask ripme && xattr -d com.apple.quarantine /Applications/ripme.jarREADME 未说明显存或 GPU 要求;需 Java 21 或更高版本,已在 Windows、Linux、Mac 上测试可用。
跨平台相册批量下载工具,把各网站图集整包抓到本地存档
批量下载网页相册的归档工具,支持 Imgur、DeviantArt 等站点,适合需要长期保存图片资源的人。
核心能力
- 按站点适配的 Ripper 批量抓取整本相册图片
- 默认跳过已下载图片,可重复 ripp 补新内容
- 内置更新器,可直接在应用内升级版本
- 支持按 URL 区间批量下载多个相册
- 可配置标签黑名单自动跳过指定相册
容易踩的坑
- latest-maindevelopment build mainpre-release2026-08-15 · 2026-08-15 11:53 UTC
查看更新说明
Commits
- 3810204: Add KemonoPartyRipper, pointed at kemono.cr (#2160) (X) #2160
- 2.1.21-17-0d8fc72f2.1.21-17-0d8fc72f.jar 最新正式版2026-08-09 · 2026-08-09 20:57 UTC
Commits
- 0827cc7: Fix DribbbleRipper to get image URLs (#2158) (chiang-sh) #2158
- fb84065: Fix BooruRipper "URI is not absolute" error for gelbooru #2115 (#2147) (huqi) #2147
- 63714fd: Fix typos in log messages (langcoe/langauge, Succesfully) (KIRA-L001) #2189
- f100c63: Add x.com URL support to TwitterRipper (s mz) #2188
- a1b6924: Add in-app UI to paste site cookies for logged-in ripping (hyper) #2185
- 280bc3f: Add configurable API key support for Rule34Ripper #2145 (Apoorv Darshan) #2172
- d52206b: Address PR review: extract domain constant, throw on missing credentials (Apoorv Darshan) #2172
- 9940187: Fix ImagevenueRipper selector after site change (YAMUNA) #2176
- 8e8211e: Fix FreeComicOnlineRipperTest & RedgifsRipperTest (Dirk) #2173
- e496a7c: Flaky macOS CI tests (Dirk) #2173
- 5af5874: only create pre-release for main branch (Dirk) #2173
- 41862d3: workflow manual trigger (Dirk) #2173
- 768477f: add Publish Test Report (Dirk) #2173
- 361cb15: Upgrade to Java 25 and update all dependencies (soloturn)
- 7d31bd7: Tag flaky test. CI no fail no more. (soloturn)
- 0d8fc72: Tag testXvideosVideo2 flaky. CI red no more. (soloturn)
- 2.1.20-14-5a3070e42025-09-20 · 2025-09-20 10:49 UTC
查看更新说明
Commits
- 531f235: Fix MrCongRipper to use new URL misskon.com (Fixes #2127) (#2128) (metaprime) #2128
- c1c2a7c: Fix for DribbbleRipper (#2129) (Ethan McIntyre) #2129
- d836a17: Fixes to Hypnohub Ripper (#2130) (Allen Gu) #2130
- 4463238: Fix EromeRipper doesn't correctly download albums that are a mix of images and video #2121 (#2141) (Aldo Queiroz) #2141
- 3558dce: Update user-agent to latest Chrome LTS (140.0.0.0) (metaprime)
- 3f9dab7: Disable broken DribbbleRipperTest (MetaPrime)
- 79b4c9e: Fix MrCongRipper not finding any images (MetaPrime)
- 5bf8652: Update EromeRipperTest.java (MetaPrime)
- cleanup unused code and comments (MetaPrime)
- Disable flaky test (MetaPrime)
- 98e632c: Rule34RipperTest > disable flaky test testShesFreakyRip (MetaPrime)
- e1102b6: Update to version 2.1.19-16-78ff73fb (MetaPrime)
- Disable flaky test (MetaPrime)
- Disable flaky tests (MetaPrime)
What's Changed
- Fix MrCongRipper to use new URL misskon.com (Fixes #2127) by @metaprime in https://github.com/RipMeApp/ripme/pull/2128
- Fix for DribbbleRipper by @jorelm68 in https://github.com/RipMeApp/ripme/pull/2129
- Fixes to Hypnohub Ripper by @Unamedpickle in https://github.com/RipMeApp/ripme/pull/2130
- Fix EromeRipper doesn't correctly download albums that are a mix of images and video (Fixes #2121) by @AldoQueirozTinoco in https://github.com/RipMeApp/ripme/pull/2141
- Update user-agent to latest Chrome LTS (140.0.0.0) by @metaprime in 3558dce
New Contributors
- @jorelm68 made their first contribution in https://github.com/RipMeApp/ripme/pull/2129
- @Unamedpickle made their first contribution in https://github.com/RipMeApp/ripme/pull/2130
- @AldoQueirozTinoco made their first contribution in https://github.com/RipMeApp/ripme/pull/2141
Full Changelog: https://github.com/RipMeApp/ripme/compare/2.1.19-16-78ff73fb...2.1.20-14-5a3070e4
- 2.1.19-16-78ff73fb2025-04-20 · 2025-04-20 08:19 UTC
查看更新说明
What's Changed
- Update user-agent to Chrome 134
- Add a ScrollView to hold the list of supported sites in the About dialog (Fixes #2104) by @metaprime in https://github.com/RipMeApp/ripme/pull/2114
- Update CfakeRipper to new site format (Fixes #2116) by @metaprime in https://github.com/RipMeApp/ripme/pull/2117
- Update HentaiimageRipper for new URL (Fixes #2122) by @metaprime in https://github.com/RipMeApp/ripme/pull/2123
- Removed rippers for sites that are permanently offline
- Fixed some tests
Full Changelog: https://github.com/RipMeApp/ripme/compare/2.1.18-16-1342b621...2.1.19-16-78ff73fb
- 2.1.18-16-1342b6212025-04-15 · 2025-04-15 18:14 UTC
查看更新说明
Commits
- 1342b62: Update README.md - update history of maintainers (metaprime)
What's Changed
- Implement Fapwiz Ripper by @metaprime in https://github.com/RipMeApp/ripme/pull/2086
- added audio post downloading support for tumblr + test by @MochiButter in https://github.com/RipMeApp/ripme/pull/2101
- ChanRipper: Add a delay before downloading videos to avoid rate limiting related to specifically videos (fixes #2049) by @metaprime in https://github.com/RipMeApp/ripme/pull/2112
New Contributors
- @MochiButter made their first contribution in https://github.com/RipMeApp/ripme/pull/2101
Full Changelog: https://github.com/RipMeApp/ripme/compare/2.1.17-32-8f58eb41...2.1.18-16-1342b621
用户点评
登录用户的真实使用记录,可按版本和硬件筛选还没有人点评。第一个说出真实体验的人最有价值。
RipMe
About
RipMe is an album downloader (or "ripper") for various websites. This is a cross-platform tool that runs on your computer. Works on Windows, Linux, and Mac.

Download
Download ripme.jar from the latest release. For information about running the .jar file, see
the How To Run wiki.
Minimum Requirements
Requires Java 21 or later to run. RipMe has been tested on and is confirmed working on Windows, Linux, and Mac.
Java 21 is the most modern possible Java version that allows us to support the most platforms; it's the default JDK on current Debian stable. See thread and issue #2055.
Supported Sites
Jump to:
Recent development updates
- The current active development repo for RipMe is located at ripmeapp/ripme.
- Note: For a while, the ripmeapp/ripme repo was inactive, but development continued at ripmeapp2/ripme.
- Now, maintainers have been updated and development has been rejoined with ripmeapp/ripme where it will continue.
- You may find a number of stale issues on ripmeapp/ripme and/or on ripmeapp2/ripme until everything is merged back together and statuses are updated.
Maintainers
RipMe has been maintained with ♥️ and in our limited free time by the following people, with current expected activity level marked by color of the indicator:
- @MetaPrime 🟡 (2025–present)
- @soloturn 🟡 (2021–present)
- @cyian-1756 🟥 (2017–2020)
- @kevin51jiang 🟥 (2017–2018)
- @MetaPrime 🟡 (2016–2017)
- and its original creator, @4pr0n 🟥 (2014–2016)
If you'd like to become a maintainer, reach out on https://gitter.im/RipMeApp/Lobby and ask an active maintainer to be added to the team.
Contact
Chat with the team and community on gitter and reddit.com/r/ripme
Version Numbers
The version number like ripme-1.7.94-17-2167aa34-feature_auto_release.jar contains a release number (1.7.94), given by
a person, the number of commits since this version (17). The commit SHA (2167aa34) uniquely references the
source code ripme was built from. If it is not built from the main branch, the branch name (feature/auto-release) is
given.
Note that this follows the Semantic Versioning spec (see https://semver.org/),
and uses the feature of the format that adds extra data after the - to
provide helpful context so that every commit on every branch has a dintinct
semver version associated with it.
Installation
On macOS, there is a cask.
brew install --cask ripme && xattr -d com.apple.quarantine /Applications/ripme.jar
Changelog
Changelog (ripme.json)
Features
- Quickly downloads all images in an online album. See supported sites
- Easily re-rip albums to fetch new content
- Built in updater
- Skips already downloaded images by default
- Can auto skip e-hentai and nhentai albums containing certain tags. See here for how to enable
- Download a range of urls. See here for how
List of Supported Sites
See the full list of Supported Sites in the wiki.
Note: Websites change over time and therefore rippers, which fundamentally depend on website layouts, can break at any time. Feel free to open an issue if you notice something not working, but please search the list of issues to see if it's already been reported.
The list of supported rippers includes:
- imgur
- twitter (currently broken, needs to be updated for X)
- tumblr
- flickr
- photobucket
- redgifs
- motherless
- imagefap
- seenive
- 8muses
- deviantart (currently broken by major changes to the site)
- xhamster
- xvideos
- ... and more!
Site Not Supported?
Request support for more sites by adding a comment to this Github issue.
If you're a developer, you can add your own Ripper by following the wiki guide: How To Create A Ripper for HTML Websites.
Maintainers
Compiling & Building
The project uses Gradle.
In particular, we use the gradlew script (gradlew.bat on Windows)
to build the app and run tests.
To build the .jar file and run the appropriate tests, navigate to the
root project directory and run gradlew with the appropriate commands
(see below). Ensure that you manually test that your change works,
add or update the corresponding test, and run at least the test(s)
that are relevant to your change.
For example, if you modify the Xhamster ripper, you might run this or a similar command:
./gradlew clean build testAll --tests XhamsterRipperTest.testXhamster2Album
Here's a breakdown of the functionality of the gradlew scripts:
The build verb will build the .jar, the tests, and will also run
the tests ,except for disabled and flaky tests.
Thus build and build test are actually synonymous.
./gradlew build
./gradlew build test
You can get more specific with your test commands:
./gradlew clean build testAll --tests XhamsterRipperTest.testXhamster2Album
./gradlew clean build -x test --warning-mode all
To perform a clean rebuild, which is only necessary to see warnings for unchanged files or if you believe that the incremental build is interfering with the build picking up your changes, for example. That shouldn't be an issue for gradle, so you should check for easier explanations like whether you saved your changes. :)
./gradlew clean
To build ("assemble") the .jar without running the tests, which is useful for manual verification of functionality of a work in progress, run the following:
./gradlew assemble
The generated JAR (java archive) in build/libs will include all dependencies.
Running Tests
Tests can be tagged as beeing slow, or flaky. The gradle build reacts to the following combinations of tags:
- default is to run all tests without tag.
- testAll runs all tests.
- testFlaky runs tests with tag "flaky".
- testSlow runs tests with tag "slow".
- tests can be run by test class, or single test. Use "testAll" so it does not matter if a test is tagged or not.
- tests can give the full stack of an assertion, exception, or error if you pass
--infoto the command
./gradlew test
./gradlew testAll
./gradlew testFlaky
./gradlew testSlow
./gradlew testAll --tests XhamsterRipperTest
./gradlew testAll --tests XhamsterRipperTest.testXhamster2Album
./gradlew testAll --tests ChanRipperTest --info
Please note that some tests may fail as sites change and our rippers become out of date. Start by building and testing a released version of RipMe and then ensure that any changes you make do not cause more tests to break.
Maintainers: How to Publish a New Release
See wiki: How to Make a New Ripme Release