superkresek/custom-instagram-sdk

此包已被废弃,不再维护。没有推荐替代包。

这是一个基于PHP的Instagram私有API的非官方SDK,从https://github.com/liamcottle/Instagram-SDK-PHP分支而来。

v0.2 2016-12-06 14:50 UTC

This package is not auto-updated.

Last update: 2017-09-09 09:23:35 UTC


README

这是一个基于PHP的Instagram私有API的非官方SDK,从https://github.com/liamcottle/Instagram-SDK-PHP分支而来。

动机

我决定构建这个项目,因为大多数我遇到的Instagram私有API库都不是基于OOP的,使用起来比较困难。

捐赠

如果你喜欢这个项目,请考虑向我的咖啡瘾基金捐款,这样我就可以继续提交代码了!

  • Paypal Paypal: 捐赠
  • btc Bitcoin: 1814x9kioBxPDBCQx8oaty7e6Z3DAosucd

安装

Composer

composer require superkresek/custom-instagram-sdk
require("../vendor/autoload.php");
$instagram = new \Instagram\Instagram();

没有Composer?

什么?!在这里抓取它: https://getcomposer.org/

示例

示例可以在examples文件夹中看到。

使用

登录

阅读:会话管理,以避免在每个脚本中调用login

$instagram->login("username", "password");

时间线动态

  • $maxId:string(可选)用于分页
$instagram->getTimelineFeed($maxId);

用户动态

  • $userId:string|User 用户或用户ID以获取动态
  • $maxId:string(可选)用于分页
$instagram->getUserFeed($userId, $maxId);

我的用户动态

  • $maxId:string(可选)用于分页
$instagram->getMyUserFeed($maxId);

点赞动态

  • $maxId:string(可选)用于分页
$instagram->getLikedFeed($maxId);

标签动态

  • $tag:string 标签
  • $maxId:string(可选)用于分页
$instagram->getTagFeed($tag, $maxId);

位置动态

  • $locationId:string|Location 位置或位置ID以获取动态
  • $maxId:string(可选)用于分页
$instagram->getLocationFeed($locationId, $maxId);

用户标签动态

  • $userId:string|User 用户或用户ID以获取标签动态
  • $maxId:string(可选)用于分页
$instagram->getUserTagsFeed($userId, $maxId);

点赞媒体

  • $mediaId:string|FeedItem FeedItem或FeedItem ID以点赞
$instagram->likeMedia($mediaId);

取消点赞媒体

  • $mediaId:string|FeedItem FeedItem或FeedItem ID以取消点赞
$instagram->unlikeMedia($mediaId);

删除媒体

  • $mediaId:string|FeedItem 要删除的FeedItem或FeedItem ID
  • $mediaType:int 媒体类型(在DeleteMediaRequest类中可用的常量)
$instagram->deleteMedia($mediaId, $mediaType);

对媒体评论

  • $mediaId:string|FeedItem 要评论的FeedItem或FeedItem ID
  • $comment:string 评论
$instagram->commentOnMedia($mediaId, $comment);

获取媒体评论

  • $mediaId:string|FeedItem 获取评论的媒体FeedItem或FeedItem ID
  • $maxId:string(可选)用于分页
$instagram->getMediaComments($mediaId, $maxId);

删除媒体评论

  • $mediaId:string|FeedItem 要删除评论的FeedItem或FeedItem ID
  • $commentIds:array 要删除的评论ID数组
$instagram->deleteCommentsFromMedia($mediaId, $commentIds);

用户信息

  • $userId:string|User 要获取信息的用户或用户ID
$instagram->getUserInfo($userId);

用户关注者

  • $userId:string|User 要获取关注者的用户或用户ID
  • $maxId:string(可选)用于分页
$instagram->getUserFollowers($userId, $maxId);

用户关注列表

  • $userId:string|User 要获取关注列表的用户或用户ID
  • $maxId:string(可选)用于分页
$instagram->getUserFollowing($userId, $maxId);

地理媒体

  • $userId:string|User 要获取地理媒体的用户或用户ID
$instagram->getUserMap($userId);

媒体信息

  • $mediaId:string|FeedItem 要获取信息的FeedItem或FeedItem ID
$instagram->getMediaInfo($mediaId);

当前用户账户

$instagram->getCurrentUserAccount();

编辑用户资料

  • $firstname:string 名字
  • $email:string 电子邮件
  • $phoneNumber:string 电话号码
  • $gender:int 性别(在User类中可用的常量)
  • $biography:string: 简介
  • $externalUrl:string 外部链接
$instagram->editUserProfile($firstname, $email, $phoneNumber, $gender, $biography, $externalUrl);

设置账户公开

$instagram->setAccountPublic();

设置账户私有

$instagram->setAccountPrivate();

显示友谊

  • $userId:string|User 要显示友谊关系的用户或用户ID
$instagram->showFriendship($userId);

关注用户

  • $userId:string|User 要关注的用户或用户ID
$instagram->followUser($userId);

取消关注用户

  • $userId:string|User 要取消关注的用户或用户ID
$instagram->unfollowUser($userId);

屏蔽用户

  • $userId:string|User 要屏蔽的用户或用户ID
$instagram->blockUser($userId);

解除屏蔽用户

  • $userId:string|User 要解除屏蔽的用户或用户ID
$instagram->unblockUser($userId);

搜索标签

  • $query:string 要搜索的标签
$instagram->searchTags($query);

搜索用户

  • $query:string 要搜索的用户
$instagram->searchUsers($query);

搜索地点(Facebook)

  • $query:string 要搜索的地点
$instagram->searchFacebookPlaces($query);
  • $latitude:string 纬度
  • $longitude:字符串 经度
$instagram->searchFacebookPlacesByLocation($latitude, $longitude);

更改个人资料图片

  • $path:字符串 上传个人资料图片的文件路径
$instagram->changeProfilePicture($path);

移除个人资料图片

$instagram->removeProfilePicture();

发布照片

  • $path:字符串 要发布的照片的文件路径
  • $caption:字符串 这张照片的标题
$instagram->postPhoto($path, $caption);

编辑媒体

  • $mediaId:字符串|FeedItem 要编辑的FeedItem或FeedItem Id
  • $caption:字符串 这段媒体的标题
$instagram->editMedia($mediaId, $caption);

按用户名获取用户

  • $username:字符串 要查找的用户名
$instagram->getUserByUsername($username);

登出

$instagram->logout();

会话管理

为了避免每次都登录,您可以使用saveSessioninitFromSavedSession方法。

脚本1

//Login
$instagram->login("username", "password");

//Serialize the Session into a JSON string
$savedSession = $instagram->saveSession();

//Store $savedSession in Database, or Cookie etc

脚本2

//Load $savedSession from Database or Cookie etc
$savedSession = ...;

//Init from Saved Session
$instagram->initFromSavedSession($savedSession);

//Session is Restored, do something!
$instagram-> ...;

附加功能

代理

在您的服务器和Instagram API之间使用代理

$instagram->setProxy("127.0.0.1:8888");

启用或禁用对等验证,以进行与Charles Proxy等工具的测试。

$instagram->setVerifyPeer(false);

待办事项

  • 收件箱
  • 直接分享
  • 最近活动
  • 注册新账户
  • 上传和发布视频

贡献

如果您想为此项目做出贡献,请随时提交一个拉取请求。

在您这么做之前,请查看问题列表,看看您想要贡献的功能是否已经在开发中。

许可

MIT

法律

"Instagram"名称是Instagram, Inc.的版权。

此项目与Instagram, Inc.或其任何附属公司或子公司无关,未获授权、维护、赞助或认可。

作为项目所有者和创建者,我对使用此项目可能产生的任何法律问题不承担责任。自行承担风险。