GithubHelp home page GithubHelp logo

loliconapi-pool's Introduction

LoliconApi Pool

an image pool for LoliconApi in Golang

Feature

  • Always request 10 image, cache unused ones.
  • Support Keyword

Usage

package main

import (
	"bytes"
	"fmt"
	loliconApiPool "github.com/Sora233/LoliconApi-Pool"
	"github.com/sirupsen/logrus"
	"image"
	_ "image/gif"
	_ "image/jpeg"
	_ "image/png"
	"io/ioutil"
	"os"
)

func main() {
	logrus.SetOutput(os.Stdout)
	logrus.SetLevel(logrus.DebugLevel)
	pool, err := loliconApiPool.NewLoliconPool(&loliconApiPool.Config{
		ApiKey:   "", // use your api key here
		CacheMin: 0,
		CacheMax: 1,
		Persist:  loliconApiPool.NewNilPersist(),
	})
	if err != nil {
		panic(err)
	}
	// use the pool
	img, err := pool.Get(
		loliconApiPool.NumOption(1),
		loliconApiPool.R18Option(loliconApiPool.R18Off),
	)
	if err != nil {
		panic(err)
	}
	for _, i := range img {
		b, err := i.Content()
		if err != nil {
			panic(err)
		}
		if len(b) == 0 {
			continue
		}
		_, cfg, err := image.DecodeConfig(bytes.NewReader(b))
		if err != nil {
			logrus.Errorf("unknown format")
			continue
		}
		filename := fmt.Sprintf("%v.%v", i.Pid, cfg)
		ioutil.WriteFile(filename, b, 0644)
		logrus.WithField("filename", filename).Info("saved")
	}
}

loliconapi-pool's People

Contributors

sora233 avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.