lefuturiste / google-photos-album-crawler
Google Photos public album crawler/fetcher
Requires
- guzzlehttp/guzzle: ^6.3
This package is auto-updated.
Last update: 2024-11-14 22:53:10 UTC
README
PHP Google photos album crawler
Just a little and light script to fetch an album name, images from a public google photos album url. This simple script will simply use guzzle to get the html of the page, apply a regex to get the JSON data, then parse it. For big album it might take a little bit of time so be patient and make sure to not block the main thread of your application. You can for example use this script in a async task or a job queue. Enjoy!
Requirements & dependencies
- php7.1 or newer
- ext-curl
- guzzlehttp/guzzle
Installation
composer require lefuturiste/google-photos-album-crawler
Usage
Be sure to use a public google photos sharing URL with the correct format.
Use the Crawler class inside the right namespace and call the method getAlbum
after instantiating the class.
This method return the following format:
id
: id of the albumname
: name of the albumimages[]
:id
: id of the imageurl
: the base url to download the imagewidth
: the max width of the imageheight
: the max height of the image
<?php require 'vendor/autoload.php'; $url = "https://photos.google.com/share/XXX?key=XXX"; $crawler = new \Lefuturiste\GooglePhotosAlbumCrawler\Crawler(); $album = $crawler->getAlbum($url); echo "Album: " . $album['id'] . " " . $album['name'] . "\n"; echo "Contain: " . count($album['images']) . " images \n\n"; foreach ($album['images'] as $image) { echo "- " . $image['id'] . " " . $image['width'] . "x" . $image['height'] . " " . $image['url'] . "\n"; }
For a simple in a file example see: example.php
Contributing
Any issues of suggetion, this is a open source project so you can use github Issues and PR. Also feel free to contact me if you want a quick answer because I don't notice the github notifications...
- Email: contact@lefuturiste.fr
- Mastodon: lefuturiste@mstdn.io
- Discord:
lefuturiste#5297