Skip to content

Releases: EchterAlsFake/PHUB

v4.0-beta-2

21 Sep 13:33
Compare
Choose a tag to compare

A bit more stable.

  • Downloading is still a mess
  • FeedItem objects can't parse feed elements

v4.0-beta-1

20 Sep 08:34
dd3c835
Compare
Choose a tag to compare
v4.0-beta-1 Pre-release
Pre-release
  • Better file structure
  • Better pyproject.toml
  • Most features have been refactored
  • Implemented unparsed feed query
  • Download 'backends'
  • Download display presets have their own file
  • Regrouped Locals in their own file
  • More reliable search video regex system
  • Regex wrappers
  • Mutable, concatenable search/filter parameters
  • More (unwrapped) user info, like bio
  • Video.get_M3U_URLseparated from Video.get_segments

Known bugs:

  • search provide inacurate results
  • Import system is terrible, circular imports errors
  • Default download function fails often on low bandwith

v3.2.2

16 Sep 08:46
21434bc
Compare
Choose a tag to compare

Removed old obfuscation resolver (#9).

v3.2.1

28 Aug 10:08
2505e80
Compare
Choose a tag to compare

This should be the last PHUB 3 release.

  • Fixed a URL error that occured when pornhub domain ending was not in .com
  • Finally corrected the pypi readme
  • Better logs
  • Searching should be more stable, even if the entire search concept is bad and will be changed with PHUB 4.

v4.0-alpha

28 Aug 10:53
Compare
Choose a tag to compare
v4.0-alpha Pre-release
Pre-release

⚠️ Alpha release, please don't use

Improvements:

  • Reworked and refactored the project structure (each object has its own file)
  • Reworked all cached features with functools (no more __properties__ crap)
  • Implemented Pornhub's webmasters program:
    • Video object fetch themselves in priority with it, but previous parsing features are still here. Everything can be accessed using video.fetch('page@key') to use the PHUB 3 parser or video.fetch('data@key') to use webmasters.
    • Client object use it to create better, reliable Search objects. Sadly, these objects don't have length data anymore because of webmasters limitations, but they provide more stable results, and way faster!
    • Separated JQuery (JSON-based queries) from HQuery (HTML-based queries, from PHUB 3)
    • This implementation improves performance of video data fetching and search queries, since we don't request the whole HTML page anymore.
  • Added download backends, even though they all are shit rn.
  • Made User.get and Client.get take a single argument and guess if it is a URL or not instead of having 2 arguments
  • Regex constants have been and will be more minimized, and use wrappers to compile them to make for better errors messages.
  • More custom errors
  • Categories, (and later, Tags) can be updated using utils.update_categories, where they will be writen directly to the source file for better type highlighting.
  • Account object is given more attributes via the Account.connect method, called when Client.login has finished running. Available features are: real account name, account avatar, wether the account is premium, and account User object representation.
  • All images generated by all objects are Image objects, wrapping their URL, name and available sizes to make their downloads easier (with Image.download).
  • Queries objects use functools caches for all pages instead of only the current page.
  • Queries caches al their pages and Video outputs.
  • Implemented more features for the User object: user bio and informations (thus implementing a cached page system into User objects).
  • Video object now parses whole M3U8 segments instead of having the option to give the raw M3U file, this will probably be implemented back in the downloader module.
  • Video objects have more cached properties: pornstars in the video, video categories, video segment.

This release is not meant for production, as some features are still missing or not well implemented yet. This is just an update on the progress so far.

TODO

  • Re-implement account queries (history, liked, etc.)
  • Refactor renew regexes
  • Find a way to let the user choose their query type for searching
  • Implement searching features
  • Include PHUB 3 stuff (docs, etc.)
  • Actually make progress on the feed object
  • Let user choose the size of Images downloads in a better way
  • Find a more reliable and less bandwith-costly way to guess a user's type
  • Implements tags constants, use them in harmony with categories and videos
  • Handle stuff if a connected account is not from pornhub user type (e.g. a channel or a model)
  • Fix relative imports being messy
  • Rethink __init__ files structures

v3.2

20 Aug 12:38
Compare
Choose a tag to compare
v3.2 Pre-release
Pre-release

[Unstable - search might produce inacurate results]

  • Errors now have their own module so they can be imported normally
  • New logo
  • Better docs
  • Searching functionnality handles parameters (video resolution, duration, category, time, sorting, etc.)
  • Added search constants (professional, homemade, etc.)
  • Added Category constants class (similar to Quality)

v3.1.4

17 Aug 11:42
40c4d04
Compare
Choose a tag to compare

Removed Js2Py requirement.

Parser will now calculate renew cookies by parsing JS code with regexing instead of executing it, so it should be much faster.

v3.1.3

16 Aug 21:56
Compare
Choose a tag to compare

Essentially more fixes.

  • Query getitem slices now work
  • Video titles that comes from a query do not trigger a video refresh
  • Updated exemples
  • Query length is now cached since query should be """"immutable""""
  • Queries support negative numbers (like lists, the last element will be taken)
  • Client.loggin now raises LogginFailed error when credentials are wrong
  • Query (should) now have a reliable video counter regex

v3.1.2

16 Aug 18:51
6c323ed
Compare
Choose a tag to compare
v3.1.2 Pre-release
Pre-release

Fixes a bunch of account related things.

  • By default, when credentials are passed in, clients will automatically try to connect uppon initialisation. This can be prevented by setting autologin=False.
  • When accounts are already logged in but we try to connect a second time, a AlreadyLoggedIn error is raised, unless force=True is specified (Should not be useful, maybe for long term usage?).
  • Queries now cache the video objects they spit out using memoization. You cannot refresh them, you can either refresh a single video or regenerate the query.
  • Account properties are now refreshable, just like Video properties.
  • Removed docs buils because why
  • Account objects now always check if the client is logged in before allowing certain requests.

v3.1.1

15 Aug 12:50
64d7510
Compare
Choose a tag to compare
  • Video cached properties now refresh well
  • Better docs
  • Working CLI again