我编写了一个脚本,该脚本通过下载pagecontent并在其中搜索字符串来读取我的Instagram个人资料信息。它运行得很好,但是几个月后,该脚本太慢了,并导致白屏。如您所见,我正在尝试显示我的Instagram个人资料中的8个值。但是,仅当我一次仅回显2个值时,我的页面才会加载(但很慢),并且不会以白屏死光结束。
我已经尝试显示所有PHP错误,但是什么也没有。如果我仅显示一个值,则所有值都是正确的。
是preg_match为8个值太慢?有更快的替代方法吗?
error_reporting(E_ALL);
ini_set('display_errors', 1);
function GetIGInformation($type)
{
$raw = file_get_contents("https://www.instagram.com/MyUserName");
if ($type == "1") {
if (preg_match('/"profile_pic_url_hd":"(.*?)","requested_by_viewer":/', $raw, $ProfilePic2)) {
return $ProfilePic2[1];
} else {
return "https://instagram.fyyz1-1.fna.fbcdn.net/vp/6a15ea059743aabab5376f3d6377a51a/5D5480F1/t51.2885-19/44884218_345707102882519_2446069589734326272_n.jpg?_nc_ht=instagram.fyyz1-1.fna.fbcdn.net";
}
}
if ($type == "2") {
if (preg_match('/"edge_followed_by":{"count":(.*?)},"followed_by_viewer":/', $raw, $Follower2)) {
return $Follower2[1];
} else {
return "0";
}
}
if ($type == "3") {
if (preg_match('/"edge_owner_to_timeline_media":{"count":(.*?),"page_info":/', $raw, $Posts2)) {
return $Posts2[1];
} else {
return "No posts";
}
}
if ($type == "4") {
if (preg_match('/"edge_follow":{"count":(.*?)},"follows_viewer"/', $raw, $Followed2)) {
return $Followed2[1];
} else {
return "Nobody";
}
}
if ($type == "5") {
if (preg_match('/"external_url":"(.*?)","external_url_linkshimmed":/', $raw, $Website2)) {
return $Website2[1];
} else {
return "No website";
}
}
if ($type == "6") {
if (preg_match('/"username":"(.*?)","connected_fb_page":/', $raw, $Username2)) {
return $Username2[1];
} else {
return "No username";
}
}