Skip to content

theBreadCompany/pixivswift

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

pixivswift

A port of upbit's pixivpy library.

Disclaimer

This whole piece is provided as is, and I am not responsible for any psychological/physical damage or law violations, i. e. hardware damage or consumption of questionable content.

Also, please do not overuse this. Pixiv has no financial benefit from this, and they somehow have to finance their servers, too...

Features

Installation

Swift Package Manager

Documentation

The project is documented, everything can be found in Xcode's Developer Documentation (shift+cmd+0)

Notes

  • The PublicAPI is deprecated and will receive no further support.
  • ugoiras are essentially image sequences which have to be assembled manually -> the image urls contain a link to a zip file containing the images. Fetch this first, unzip, fetch metadata via AppPixivAPI.ugoira_metadata and use the first given frame delay for assembling. Take a look at PixivDownloader.zip_to_ugoira.

TODO

  • write more tests
  • actually finally finish the fix for headless login
  • introduce a proper repo structure (like a dev branch) and version management (patches are always pushed without updating the tag, meaning clients using this pkg might have the bugs that are solved in HEAD (aaa))
  • swiftify method and class/struct names
  • de-curse API methods (underlying request methods use dispatch semaphores in a cursed way, will fix that)
  • implement metadata integration for non-AppleOS by using external libs like exiv2
  • implement oauth2 login for non-Apple platforms

Announcements

I'll release a repo of an iOS/macOS app using this API soon. You can already find my script using this API here.

Credits

  • pixiv.net for their amazing platform
  • upbit for providing his work as opensource
  • Apple for creating a powerful language that is really nice to learn and use