Skip to content

Porn Fetch V3

Compare
Choose a tag to compare
@EchterAlsFake EchterAlsFake released this 08 Feb 23:49
· 409 commits to master since this release

3.0

Entire rewrite of Porn Fetch, the CLI, the Android App and the HQPorner API.

Read this before installing

I just wanted to say thanks, to all the people which are using this Project. We are now at 3k downloads and I never expected this.
Thank you so much!

Note: 32 bit support is experimental and not well tested!

FOR ANDROID USERS

Downloaded Videos will be in your Downloads directory ( /storage/emulated/0/Download/ )

Porn Fetch Android is now based on PySide6 and has almost all features which the Desktop version has.

You CAN NOT use the threaded download mode and FFMPEG. Android has some issues with this, I'll try to fix them.
The QFileDialog doesn't work. DO NOT try to apply a new output path. The app will just crash!

Porn Fetch does only work for aarch64 (armv8) This is not an issue from me, but from Qt. Sorry.

I tested Porn Fetch on Android 12 and 13.

Changelog

GUI

  • Entire rewrite of the Porn Fetch GUI (Graphical User Interface)
  • The GUI is now fully resizeable and works on all screen sizes
  • The GUI now supports translations in German, Chinese and French
  • The GUI now has a sidebar which is simpler than v2.9
  • There's a third progressbar which tracks the total progress of all PornHub videos being downloaded
  • The Tree Widget can now provide more information over the videos. Author, title and duration
  • The Progressbars now have a dark design
  • The License widget has now a dark design too
  • The header of the QTreeWidget now supports Dark Mode.
  • Updated to new improved icons.
  • Global usage of the tree Widget.

Performance

  • There are three threading modes for different use cases
  • The semaphore has been fixed, and you can now decide how many videos can be downloaded simultaneously (1-6)
  • Implemented a Threading class for listing model videos.
  • Transitioned all Metadata methods to use threading.
  • Optimized the 'check_if_video_exists' function for greater efficiency.
  • Strengthened the robustness of the config file integrity checking logic.
  • Porn Fetch is now built with Python 3.12 (Android still 3.10)

GitHub Repository

  • A lot better project structure
  • The Readme now has a translation guide
  • Optimized all readmes

Code Optimization

  • Removed unnecessary signals and completed slots
  • Improved threading classes
  • Refactored the user settings functions
  • Enhanced structure of the Q Resource file.
  • Stylesheets have been reorganized and divided into multiple sections for better management.
  • Changed the strip title function to allow non UTF-8 characters to support other language alphabets
  • Comprehensive rewrite of the Command Line Interface (CLI).

Translations

  • Added German
  • Added French
  • Added Chinese

Scripts

  • Removed iOS build script (Porn Fetch isn't working on iOS sadly)
  • Added support for macOS in the build script
  • Added support for Windows (separate build script)

Issues / Bug Fixes

  • Fixed an issue with the config file location creation

Deprecations

  • Threading is now ALWAYS on. You can't disable it, because I see no reason for it.
  • Removed Searching Filters

Features

  • Added support for Eporner.com
  • Added support for xnxx.com
  • Added support for xvideos.com
  • New directory system to organize videos by model in separate folders.
  • Videos can now be shown in reverse order #17
  • You can now also download by model on HQPorner
  • You can now download by category on HQPorner
  • You can now download by Top Porn on HQPorner
  • You can now download a random video on HQPorner
  • You can now search for videos on HQPorner
  • FFMPEG will now be automatically downloaded and installed if checked as threading mode

Android

  • The Android App is now exactly the same as Porn Fetch desktop
  • The Android app is now based on PySide6
  • The Android app now supports all* features as the Desktop App
  • except the QFileDialog, but this is an Issue from Qt itself.

Contributors