8 unstable releases (3 breaking)
new 0.6.1 | Jan 1, 2025 |
---|---|
0.6.0 |
|
0.5.0 | Aug 13, 2024 |
0.4.0 | May 20, 2024 |
0.3.3 | Feb 28, 2024 |
#331 in Web programming
Used in tosho
115KB
2K
SLoC
tosho-musq
An asynchronous client for the MU! API by SQ.
The following crate is used by the tosho
app.
Usage
Download the tosho
app, or you can utilize this crate like any other Rust crate:
use tosho_musq::MUClient;
use tosho_musq::constants::get_constants;
#[tokio::main]
async fn main() {
let client = MUClient::new("1234", get_constants(1)).unwrap();
let manga = client.get_manga(240).await.unwrap();
println!("{:?}", manga);
}
Available get_constants
value are:
1
: Android2
: iOS3
: Web
Authentication
The following sources do not have any easy authentication method.
The command to authenticate is tosho mu auth
.
See below on how to obtain the secret
token. For mobile version, it's recommended that you set up network intercepting first; please read INTERCEPTING.
Using the CLI, you can do this:
$ tosho mu auth [secret] -t android
Or, with Apple constants:
$ tosho mu auth [secret] -t ios
Or, with Web constants:
$ tosho mu auth [secret] -t web
With crates, you can follow the above usages.
Web
- Login in the browser
- Open Network Inspector
- Visit the "My Page" page
- Check API call to
/api/my_page
which has thesecret
param, copy it. - Authenticate with
tosho
.
Android
- Open the source app.
- Click on the home page or my page.
- Observe the requests on HTTP Toolkit and find the request to the API that has
secret
as the query parameters. - Save that secret elsewhere and authenticate with
tosho
.
Apple
- Open the Stream app and click
Sniff Now
. - Go to the source app and open the
Home
orMy Page
. - Return to the Stream app and click
Sniff History
, then select the most recent item. - Find the request that goes to the API of the source app and locate the request that has
secret=xxxxx
in them. - Copy the link and save the secret value somewhere so you can authenticate with
tosho
.
Disclaimer
This project is designed as an experiment and to create a local copy for personal use. These tools will not circumvent any paywall, and you will need to purchase and own each chapter with your own account to be able to make your own local copy.
We're not responsible if your account got deactivated.
License
This project is licensed with MIT License (LICENSE or http://opensource.org/licenses/MIT)
Dependencies
~7–19MB
~249K SLoC