anime-db / ani-db-browser-bundle
Plugin AniDB for the catalog Anime DB
Installs: 1 267
Dependents: 1
Suggesters: 0
Security: 0
Stars: 4
Watchers: 3
Forks: 2
Open Issues: 0
Requires
- php: >=5.5
- ext-zlib: *
- guzzlehttp/guzzle: ~6.2
Requires (Dev)
- phpunit/phpunit: ~4.8
- satooshi/php-coveralls: ^1.0
- scrutinizer/ocular: ~1.3
- symfony/config: ~2.3|~3.0
- symfony/dependency-injection: ~2.3|~3.0
- symfony/expression-language: ~2.3|~3.0
- symfony/http-kernel: ~2.3|~3.0
README
Browser for AniDB.net
Read API documentation here: http://wiki.anidb.net/w/HTTP_API_Definition
Installation
Pretty simple with Composer, run:
composer require anime-db/ani-db-browser-bundle
Add AnimeDbAniDbBrowserBundle to your application kernel
// app/appKernel.php public function registerBundles() { $bundles = array( // ... new AnimeDb\Bundle\AniDbBrowserBundle\AnimeDbAniDbBrowserBundle(), ); }
Configuration
# app/config/config.yml anime_db_ani_db_browser: api: # API host # As a default used 'http://api.anidb.net:9001' host: 'http://api.anidb.net:9001' # Prefix for API resurces # As a default used '/httpapi/' prefix: '/httpapi/' # API version # As a default used '1' protover: 1 # You must register a client and use it here. # See for more info: # - http://anidb.net/perl-bin/animedb.pl?show=client # - https://wiki.anidb.net/w/UDP_Clients # - https://wiki.anidb.net/w/UDP_API_Definition app: # Verion of your client. version: 1 # Your client name. # You point it at registration here: http://anidb.net/perl-bin/animedb.pl?show=client client: 'my_home_client' # Your client code. # You will receive it after registration. code: 'api-team-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
Usage
First get a browser
$browser = $this->get('anime_db.ani_db.browser');
Get data for anime Seikai no Monshou (wiki):
$content = $browser->get(['query' => ['request' => 'anime', 'aid' => 1]]);
Catch exceptions
use AnimeDb\Bundle\AniDbBrowserBundle\Exception\BannedException; use AnimeDb\Bundle\AniDbBrowserBundle\Exception\NotFoundException; try { $content = $browser->get('anime?aid=1'); } catch (BannedException $e) { // you are banned } catch (NotFoundException $e) { // anime not found } catch (\Exception $e) { // other exceptions }
You can customize request options. See Guzzle Documentation.
License
This bundle is under the GPL v3 license. See the complete license in the file: LICENSE