Untitled
unknown
plain_text
2 years ago
22 kB
10
Indexable
<?php header('Content-Type: application/json; charset=utf-8'); error_reporting(-1); set_time_limit(0); $user = isset($_GET['username']) ? $_GET['username'] : null; $post = $_GET['post'] ?? null; $proxy = $_GET['proxy'] ?? null; $sessionid = $_GET['sessionid'] ?? null; if (isset($_GET['vippp'])) { function Globalpost($post, $x = 0) { $curl = curl_init(); curl_setopt_array($curl, [ CURLOPT_URL => "https://instagram-story-downloader-media-downloader.p.rapidapi.com/index?url=" . $post, CURLOPT_RETURNTRANSFER => true, CURLOPT_FOLLOWLOCATION => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 30, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "GET", CURLOPT_HTTPHEADER => [ "X-RapidAPI-Host: instagram-story-downloader-media-downloader.p.rapidapi.com", "X-RapidAPI-Key: 9a18840479msh6e7d1abdc7fdebcp10b8cajsnbe5fd08fdc53" ], ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { if ($x > 5) return json_decode($response, true); if (isset(json_decode($response, true)['error'])) { sleep(2); $x += 1; return Globalpost($post, $x); } return json_decode($response, true); } } function userInfo($user, $x = 0) { $curl = curl_init(); curl_setopt_array($curl, [ CURLOPT_URL => "https://instagram-story-downloader-media-downloader.p.rapidapi.com/profile/index?url=" . $user, CURLOPT_RETURNTRANSFER => true, CURLOPT_FOLLOWLOCATION => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 30, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "GET", CURLOPT_HTTPHEADER => [ "X-RapidAPI-Host: instagram-story-downloader-media-downloader.p.rapidapi.com", "X-RapidAPI-Key: 9a18840479msh6e7d1abdc7fdebcp10b8cajsnbe5fd08fdc53" ], ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { if ($x > 5) return json_decode($response, true); if (isset(json_decode($response, true)['error'])) { $x += 1; return userInfo($user, $x); } return json_decode($response, true); } } function userStory($user) { $curl = curl_init(); curl_setopt_array($curl, [ CURLOPT_URL => "https://instagram-story-downloader-media-downloader.p.rapidapi.com/story/index?url=" . $user, CURLOPT_RETURNTRANSFER => true, CURLOPT_FOLLOWLOCATION => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 30, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "GET", CURLOPT_HTTPHEADER => [ "X-RapidAPI-Host: instagram-story-downloader-media-downloader.p.rapidapi.com", "X-RapidAPI-Key: 9a18840479msh6e7d1abdc7fdebcp10b8cajsnbe5fd08fdc53" ], ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { return json_decode($response, true); } } if ($post) { $post = Globalpost($post); if (!isset($post['media'])) die; if (is_array($post['media'])) { foreach ($post['media'] as $media) { $post['results']['media'][] = ['__typename' => $post['Type'] ?? $post['Post-Video'] ?? 'post', 'id' => mt_rand(11111, 9999999999999), 'video_view_count' => mt_rand(11111, 99999), 'url' => $media]; } } else { $post['results']['media'][] = ['__typename' => $post['Type'] ?? $post['Post-Video'] ?? 'post', 'id' => mt_rand(11111, 9999999999999), 'video_view_count' => mt_rand(11111, 99999), 'url' => $post['media']]; } echo json_encode($post, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_UNICODE); } if ($user) { echo file_get_contents('https://balgare.mohammed-api.com/media/social.php?token=adminAcess&type=story&username=' . $user); } die; } if (isset($_GET['vip'])) { $file = str_replace('creating account (sms has been submited)', '', file_get_contents('accounts.txt')); $exists_accounts = array_values(array_filter(explode("\n", $file))); $rand = $exists_accounts[array_rand($exists_accounts, 1)]; preg_match_all('#IG-U-DS-USER-ID=(.*?);|sessionid=(.*?);#', $rand, $matches); preg_match('#\|(.*?)\|#', $rand, $userAgent); $userAgent = $userAgent[1]; $ds_user_id = $matches[1][0]; $sessionid = $matches[2][1]; } #$ex = explode(':', $proxy); #$ip = $ex[0]; #$port = $ex[1]; #$username = $ex[2]; #$passwd = $ex[3]; # #$proxy = "$ip:$port"; #$proxyauth = "$username:$passwd"; sleep(8); if (!isset($_GET['enc']) && !isset($_GET['vip'])) { return; } $cc = [ [ "cookie: ds_user_id=$ds_user_id; sessionid=$sessionid;", "user-agent: " . $userAgent, "x-ig-app-id: 936619743392459", ] ]; function info($user) { global $cc; global $proxy; global $proxyauth; #$url = "https://www.instagram.com/" . $user . "/?__a=1"; $url = "https://i.instagram.com/api/v1/users/web_profile_info/?username=$user"; $curl = curl_init($url); curl_setopt($curl, CURLOPT_URL, $url); #curl_setopt($curl, CURLOPT_PROXY, $proxy); #curl_setopt($curl, CURLOPT_PROXYUSERPWD, $proxyauth); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); $headers = $cc[array_rand($cc)]; curl_setopt($curl, CURLOPT_HTTPHEADER, $headers); //for debug only! curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); $resp = curl_exec($curl); curl_close($curl); if (empty($resp) || preg_match('#challenge|accept#', $resp)) { print_r(curl_error($curl)); print_r($headers); var_dump($resp); echo $url; } return $resp; } function story($user) { global $cc; global $proxy; global $proxyauth; #$url = "https://www.instagram.com/graphql/query/?query_id=17873473675158481&variables=%7B%22reel_ids%22%3A%5B%22" . $user . "%22%5D%2C%22precomposed_overlay%22%3Afalse%7D"; $url = "https://www.instagram.com/graphql/query/?query_hash=303a4ae99711322310f25250d988f3b7&variables={%22reel_ids%22:[%22" . $user . "%22],%22tag_names%22:[],%22location_ids%22:[],%22highlight_reel_ids%22:[],%22precomposed_overlay%22:false,%22show_story_viewer_list%22:true,%22story_viewer_fetch_count%22:50}"; $curl = curl_init($url); curl_setopt($curl, CURLOPT_URL, $url); #curl_setopt($curl, CURLOPT_PROXY, $proxy); #curl_setopt($curl, CURLOPT_PROXYUSERPWD, $proxyauth); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); $headers = $cc[array_rand($cc)]; #$headers = $GLOBALS['headers']; curl_setopt($curl, CURLOPT_HTTPHEADER, $headers); //for debug only! curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); $resp = curl_exec($curl); curl_close($curl); return $resp; } function ExtractPostId(string $url) { $re = '/^https?:\/\/(?:www\.)?instagram\.com\/[^\/]+(?:\/[^\/]+)?\/([^\/]{11})\/.*$/m'; preg_match_all($re, $url, $matches, PREG_SET_ORDER, 0); foreach ($matches as $match) { $sh = $match[1]; } return $sh ?? null; } function post($post) { global $cc; $sh = ExtractPostId($post); if (isset($sh)) { $curl = curl_init(); $headers = $cc[array_rand($cc)]; curl_setopt_array($curl, array( CURLOPT_URL => 'https://www.instagram.com/graphql/query/?query_hash=2c4c2e343a8f64c625ba02b2aa12c7f8&variables=%7B%22shortcode%22:%22' . $sh . '%22%7D', // Server Path CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_HEADER => false, CURLOPT_MAXREDIRS => 0, CURLOPT_TIMEOUT => 30, // increase this CURLOPT_PROXY => $GLOBALS['proxy'], CURLOPT_PROXYUSERPWD => $GLOBALS['proxyauth'], CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_HTTPHEADER => $headers, )); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); $response = curl_exec($curl); $info = curl_getinfo($curl); $err = curl_error($curl); curl_close($curl); return $response; } else { return ['status' => false]; } /*global $cc; global $proxy; global $proxyauth; $sub = substr($post, -1); $q = '?'; if (preg_match('#/\?#', $post)) { $q = '&'; $url = $post . "{$q}__a=1"; } elseif ($sub != '/') { $url = $post . "/{$q}__a=1"; } elseif ($sub == '/') { $url = $post . "{$q}__a=1"; } if (is_null($url)) { die; } $curl = curl_init($url); curl_setopt($curl, CURLOPT_URL, $url); #curl_setopt($curl, CURLOPT_PROXY, $proxy); #curl_setopt($curl, CURLOPT_PROXYUSERPWD, $proxyauth); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); $headers = $cc[array_rand($cc)]; curl_setopt($curl, CURLOPT_HTTPHEADER, $headers); //for debug only! curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); $resp = curl_exec($curl); #$info = curl_getinfo($curl); curl_close($curl); #var_dump($info); return $resp; */ } function h($idd) { global $cc; global $proxy; global $proxyauth; $url = 'https://www.instagram.com/graphql/query/?query_hash=c9100bf9110dd6361671f113dd02e7d6&variables={"user_id":' . $idd . ',"include_chaining":false,"include_reel":true,"include_suggested_users":false,"include_logged_out_extras":false,"include_highlight_reels":true,"include_live_status":false}'; $curl = curl_init($url); curl_setopt($curl, CURLOPT_URL, $url); #curl_setopt($curl, CURLOPT_PROXY, $proxy); #curl_setopt($curl, CURLOPT_PROXYUSERPWD, $proxyauth); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); $headers = $cc[array_rand($cc)]; curl_setopt($curl, CURLOPT_HTTPHEADER, $headers); //for debug only! curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); $resp = curl_exec($curl); curl_close($curl); return $resp; } function get($id) { global $cc; global $proxy; global $proxyauth; $url = "https://i.instagram.com/api/v1/feed/reels_media/?reel_ids=highlight:" . $id; $curl = curl_init($url); curl_setopt($curl, CURLOPT_URL, $url); #curl_setopt($curl, CURLOPT_PROXY, $proxy); #curl_setopt($curl, CURLOPT_PROXYUSERPWD, $proxyauth); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); $headers = [ "x-ig-app-id: 936619743392459", ]; $headers = array_merge($headers, $cc[array_rand($cc)]); curl_setopt($curl, CURLOPT_HTTPHEADER, $headers); //for debug only! curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); $resp = curl_exec($curl); curl_close($curl); return $resp; } if (isset($_GET['highlight_id'])) { $get = get($_GET['highlight_id']); $decode_get = json_decode($get, true); $highlights = $decode_get['reels']['highlight:' . $_GET['highlight_id']]['items']; $highlight_id_array = []; foreach ($highlights as $highlight) { $vid = 'video_versions'; if (array_key_exists($vid, $highlight)) { $highlight_id_array['video'][] = $highlight['video_versions']['0']['url']; } else { $highlight_id_array['photo'][] = $highlight['image_versions2']['candidates']['0']['url']; } } echo json_encode(["results" => $highlight_id_array], JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE); die; } if (isset($post)) { $d = post($post); $postdata = json_decode($d, true)['graphql']['shortcode_media']; if (isset($postdata)) { $array['results']['likes'] = $postdata['edge_media_preview_like']['count']; $array['results']['comments'] = $postdata['edge_media_to_parent_comment']['count']; $array['results']['taken_at'] = date('Y-m-d h:i:s', $postdata['taken_at_timestamp']); $array['results']['caption'] = $postdata['edge_media_to_caption']['edges'][0]['node']['text'] ?? '✖️'; if (!isset($postdata['edge_sidecar_to_children'])) { if (isset($postdata['video_url'])) { $url = $postdata['video_url']; $array['results']['media'][] = [ '__typename' => $postdata['__typename'], 'id' => $postdata['id'], 'video_view_count' => $postdata['video_view_count'], 'url' => $url ]; } else { $url = $postdata['display_url']; $array['results']['media'][] = [ '__typename' => $postdata['__typename'], 'id' => $postdata['id'], 'url' => $url ]; } } else { if (is_array($postdata['edge_sidecar_to_children']['edges'])) { foreach ($postdata['edge_sidecar_to_children']['edges'] as $set) { $set = $set['node']; if (isset($set['video_url'])) { $url = $set['video_url']; $array['results']['media'][] = [ '__typename' => $set['__typename'], 'id' => $set['id'], 'video_view_count' => $set['video_view_count'], 'url' => $url ]; } else { $url = $set['display_url']; $array['results']['media'][] = [ '__typename' => $set['__typename'], 'id' => $set['id'], 'url' => $url ]; } } } } echo json_encode($array, JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE); } elseif (!empty($d)) { $a = json_decode($d, true); if (isset($a['items'])) { foreach ($a as $postdata) { $array['results']['likes'] = $postdata['like_count']; $array['results']['comments'] = $postdata['comment_count']; $array['results']['taken_at'] = date('Y-m-d h:i:s', $postdata['taken_at']); $array['results']['caption'] = $postdata['caption']['text'] ?? '✖️'; if (!isset($postdata['video_versions'][0]['url'])) { if (isset($postdata['carousel_media'])) { $carousel_media = $postdata['carousel_media']; foreach ($carousel_media as $response) { $array['results']['media'][] = [ '__typename' => 'photo', 'id' => $response['id'], 'url' => $response['image_versions2']['candidates'][0]['url'] ]; } } else { $response = $postdata; $array['results']['media'][] = [ '__typename' => 'photo', 'id' => $response['id'], 'url' => $response['image_versions2']['candidates'][0]['url'] ]; } } else { $array['results']['media'][] = [ '__typename' => $postdata['video_versions'][0]['type'], 'id' => $postdata['video_versions'][0]['id'], 'url' => $postdata['video_versions'][0]['url'] ]; } } } else { $data = json_decode($d, true); $postdata = $data['data']['shortcode_media'] ?? null; if ($postdata != null) { $array['results']['likes'] = $postdata['edge_media_preview_like']['count'] ?? 0; $array['results']['comments'] = $postdata['edge_media_to_comment']['count'] ?? 0; $array['results']['taken_at'] = date('Y-m-d h:i:s', $postdata['taken_at_timestamp']); $array['results']['caption'] = $postdata['edge_media_to_caption']['edges'][0]['node']['text'] ?? 'empty'; $edges = $postdata['edge_sidecar_to_children']['edges'] ?? null; if ($edges === null) { $array['results']['media'][] = [ '__typename' => $postdata['__typename'], 'id' => $postdata['id'], 'url' => $postdata['video_url'] ?? $postdata['display_url'] ]; } else { foreach ($edges as $edge) { $array['results']['media'][] = [ '__typename' => $postdata['__typename'], 'id' => $postdata['id'], 'url' => $edge['node']['video_url'] ?? $edge['node']['display_url'] ?? $edge['node']['display_resources'][1]['src'] ]; } } } } echo json_encode($array, JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE); } } if (isset($user) && !empty($user)) { $get = info($user); $_story = []; // array to return data $decode_get = json_decode($get, true); #$user_id = $decode_get['graphql']['user']['id']; $user_id = $decode_get['data']['user']['id']; if (!isset($user_id)) { die; } if (isset($_GET['highlight'])) { $f = h($user_id); $decode_h = json_decode($f, true); $ids = $decode_h['data']['user']['edge_highlight_reels']['edges']; $highlight_array = []; foreach ($ids as $highlight) { $highlight_array['id'][] = $highlight['node']['id']; $highlight_array['cover'][] = $highlight['node']['cover_media_cropped_thumbnail']['url']; $highlight_array['title'][] = $highlight['node']['title']; } echo json_encode(["results" => $highlight_array], JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE); die; } $c = $decode_get['data']['user']['is_private']; $biography = $decode_get['data']['user']['biography']; $edge_followed_by = $decode_get['data']['user']['edge_followed_by']['count']; $edge_follow = $decode_get['data']['user']['edge_follow']['count']; $full_name = $decode_get['data']['user']['full_name']; $highlight_reel_count = $decode_get['data']['user']['edge_owner_to_timeline_media']['count']; $is_verified = $decode_get['data']['user']['is_verified']; $profile_pic_url_hd = $decode_get['data']['user']['profile_pic_url_hd']; $profile_pic_url = $decode_get['data']['user']['profile_pic_url']; $username = $decode_get['data']['user']['username']; $stories = story($user_id); $data = json_decode($stories, true); $stories = $data['data']['reels_media']['0']['items'] ?? null; if (isset($stories)) { foreach ($stories as $story) { $vid = 'video_resources'; if (isset($story['tappable_objects'][0]['username'])) { $_story['tags'][] = $story['tappable_objects'] ?? '✖️'; } if (!array_key_exists($vid, $story)) { $_story['photo'][] = $story['display_url']; } else { $_story['video'][] = $story['video_resources'][0]['src']; } } } $_story['id'] = $user_id; $_story['username'] = $username; $_story['profile_pic_url'] = $profile_pic_url; $_story['profile_pic_url_hd'] = $profile_pic_url_hd; $_story['is_verified'] = $is_verified; $_story['posts_count'] = $highlight_reel_count; $_story['full_name'] = $full_name; $_story['following'] = $edge_follow; $_story['followers'] = $edge_followed_by; $_story['biography'] = $biography; $_story['is_private'] = $c; echo json_encode(["results" => $_story], JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE); }
Editor is loading...