salahat/instagram-scraper

Instagram PHP 爬虫。无需授权获取账户信息、照片和视频


README

这个库基于 Instagram 网页版。我们开发它是因为现在很难获得批准的 Instagram 应用程序。目的是支持网页桌面版和移动版的所有功能。

依赖项

代码示例

$instagram = \InstagramScraper\Instagram::withCredentials('username', 'password');
$instagram->login();
$account = $instagram->getAccountById(3);
echo $account->getUsername();

某些方法不需要认证

$instagram = new \InstagramScraper\Instagram();
$nonPrivateAccountMedias = $instagram->getMedias('kevin');
echo $nonPrivateAccountMedias[0]->getLink();

如果您使用认证,建议缓存用户会话。在这种情况下,您不需要每次程序运行时都运行 $instagram->login() 方法

use Phpfastcache\Helper\Psr16Adapter;

$instagram = \InstagramScraper\Instagram::withCredentials('username', 'password', new Psr16Adapter('Files'));
$instagram->login(); // will use cached session if you want to force login $instagram->login(true)
$instagram->saveSession();  //DO NOT forget this in order to save the session, otherwise have no sense
$account = $instagram->getAccountById(3);
echo $account->getUsername();

使用代理请求

$instagram = new \InstagramScraper\Instagram();
Instagram::setProxy([
    'address' => '111.112.113.114',
    'port'    => '8080',
    'tunnel'  => true,
    'timeout' => 30,
]);
// Request with proxy
$account = $instagram->getAccount('kevin');
Instagram::disableProxy();
// Request without proxy
$account = $instagram->getAccount('kevin');

安装

使用 composer

composer.phar require raiym/instagram-php-scraper

composer require raiym/instagram-php-scraper

如果您没有 composer

您可以在这里下载它 这里

示例

查看示例 这里

其他

Java 库: https://github.com/postaddictme/instagram-java-scraper