Crea un tool per programmare la pubblicazione di post sul tuo account instagram attraverso uno script con Laravel 5
Versioni utilizzate nella lezione
laravel@5
php@5.6
Introduzione
Creiamo un applicazione con Laravel per pubblicare dei post attraverso instagram.
Inizializzazione
- Crafting dell’applicazione Laravel,lancia il comando con il nome della tua application
laravel new application
Installazione libreria mpg25
-
Sfruttiamo un packet presente online per gestire le API instagram, qui il link: Attraverso questa libreria abbiamo a disposizione delle Classi per costruire la nostra app che interagisce con Instagram. Trovate il video tutorial su Youtube sul mio canale.
-
Installazione
composer require mgp25/instagram-php
Configura le chiavi di instagram in .env con
.env
INSTAGRAM_USERNAME=tua key
INSTAGRAM_PASSWORD=tua secret
Creazione delle nuove Routes
...
Route::get('/public_post', 'InstagramController@index');
...
Instagram Controller
Crea il Controller
php artisan make:controller InstagramController
Codice nel Controller
- Qui il codice principale per lo script di pubblicazione di un post:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class InstagramController extends Controller
{
//
public function index(){
\InstagramAPI\Instagram::$allowDangerousWebUsageAtMyOwnRisk = true;
/////// CONFIG ///////
$username = env('INSTAGRAM_USERNAME');
$password = env('INSTAGRAM_PASSWORD');
$debug = false;
$truncatedDebug = false;
//////////////////////
/////// MEDIA ////////
$file_path = 'upload_instagram/1.jpg';
$captionText = 'Isjeady Channel - #primopostautomatizzato #api';
//////////////////////
$response = "- ";
$ig = new \InstagramAPI\Instagram($debug, $truncatedDebug);
try {
$ig->login($username, $password);
$response .= " Login Effettuata con successo \n";
} catch (\Exception $e) {
echo 'Something went wrong: '.$e->getMessage()."\n";
exit(0);
}
$metadata = [];
$metadata['caption'] = $captionText;
try{
$photo = new \InstagramAPI\Media\Photo\InstagramPhoto($file_path);
$response .= $ig->timeline->uploadPhoto($photo->getFile(), $metadata);
} catch (\Exception $e) {
echo 'Something went wrong: '.$e->getMessage()."\n";
}
//dd($password);
return view('welcome', compact('response'));
}
}
Installazione del Codice Sorgente
Per installarlo:
-
Unzip il file .Zip in una dir
-
Da linea di comando spostati nella dir
-
Lancia il comando ‘composer install’ e poi ‘npm install’
installcomposer install npm install
-
Duplica il file .env.example in .env puoi anche lanciare il comando
copymv .env.example .env
-
Configura il nome del Db (crealo sul tuo DBMS,Mysql Workbench per esempio),user,e password.
-
lancia il comando
php artisan migrate
- configura le chiavi di instagram in .env con
INSTAGRAM_USERNAME=tua key
INSTAGRAM_PASSWORD=tua secret
- lancia il comando ‘php artisan serve’
php artisan serve
- l’app è pronta per essere utilizzata