抖音數(shù)據采集

<?php
/**
* 抖音鏈接url
*/
private function douyin ($url){

   $number_maps = [
        0 => ['&#xe603;', '&#xe60d;', '&#xe616;'],
        1 => ['&#xe602;', '&#xe60e;', '&#xe618;'],
        2 => ['&#xe605;', '&#xe610;', '&#xe617;'],
        3 => ['&#xe604;', '&#xe611;', '&#xe61a;'],
        4 => ['&#xe606;', '&#xe60c;', '&#xe619;'],
        5 => ['&#xe607;', '&#xe60f;', '&#xe61b;'],
        6 => ['&#xe608;', '&#xe612;', '&#xe61f;'],
        7 => ['&#xe613;', '&#xe60a;', '&#xe61c;'],
        8 => ['&#xe614;', '&#xe60b;', '&#xe61d;'],
        9 => ['&#xe609;', '&#xe61e;', '&#xe615;'],
    ];

    $opts = [
        'http' => [
            'header' => "User-Agent: Mozilla/5.0 (Linux; Android 5.0; SM-G900P Build/LRX21T) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Mobile Safari/537.36",
        ]
    ];
    $context = stream_context_create($opts);
    $html = file_get_contents($url, false, $context);
    if (!$html) {
        return [];
    }

    $data = [];
    // 封面圖
    preg_match('/id="videoPoster"\s*style="background-image:url\((.*?)\)">/i', $html, $match);
    $data['cover_url'] = $match[1];

    //抖音昵稱
    preg_match('/class="user-info-name">\@(.*?)<\//i', $html, $match);
    $data['douyin_name'] = $match[1];

    //抖音ID
    preg_match('/<\s*p\s*class="user-info-id">.*?ID:(.*?)<\/p>/i', $html, $match);
    $data['douyin_uid'] = str_replace(' ', '', strip_tags($match[1]));

    //點贊數(shù)
    preg_match('/<\s*div\s*class="info-item info-like"\s*.*?>.*?<\s*p\s*class="count"\s*>(.*?)<\/p>/i', $html, $match);
    $data['thumb_times'] = str_replace(' ', '', strip_tags($match[1]));

    // 評論數(shù)
    preg_match('/<\s*div.*data-item="comment"\s*>.*?<\s*p\s*class="count"\s*>(.*?)<\/p>/i', $html, $match);
    $data['comment_times'] = str_replace(' ', '', strip_tags($match[1]));

    // $data_str = json_encode($data);
    foreach ($number_maps as $k => $v) {
        $data = str_replace($v, $k, $data);
    }

    $thumb_times_unit = strtolower(substr($data['thumb_times'], -1));
    if ($thumb_times_unit == 'w') {
        $data['thumb_times'] = intval(floatval($data['thumb_times']) * 10000);
    } else if ($thumb_times_unit == 'k') {
        $data['thumb_times'] = intval(floatval($data['thumb_times']) * 1000);
    }

    $comment_times_unit = strtolower(substr($data['comment_times'], -1));
    if ($comment_times_unit == 'w') {
        $data['comment_times'] = intval(floatval($data['comment_times']) * 10000);
    } else if ($comment_times_unit == 'k') {
        $data['comment_times'] = intval(floatval($data['comment_times']) * 1000);
    }

    preg_match('/itemId\s*:\s*"(\d+)"/i', $html, $match);
    $data['douyin_item_id'] = $match[1];

    preg_match('/uid:\s*"(\d+)"/i', $html, $match);
    $user_id = $match[1];
    $html = file_get_contents('http://www.iesdouyin.com/share/user/' . $user_id, false, $context);
    $data['user_id'] = $user_id;

    //粉絲數(shù)
    preg_match('/<\s*span\s*class="follower block"\s*.*?>.*?<\s*span\s*class="num"\s*.*?>(.*?)<\/span>/i', $html, $match);
    $data['fans_times'] = str_replace(' ', '', strip_tags($match[1]));

    //關注數(shù)
    preg_match('/<\s*span\s*class="liked-num block"\s*.*?>.*?<\s*span\s*class="num"\s*.*?>(.*?)<\/span>/i', $html, $match);
    $data['like_times'] = str_replace(' ', '', strip_tags($match[1]));

    foreach ($number_maps as $k => $v) {
         $data = str_replace($v, $k, $data);
    }

    $fans_times_unit = strtolower(substr($data['fans_times'], -1));
    if ($fans_times_unit == 'w') {
        $data['fans_times'] = intval(floatval($data['fans_times']) * 10000);
    } else if ($fans_times_unit == 'k') {
        $data['fans_times'] = intval(floatval($data['fans_times']) * 1000);
    }

    $like_times_unit = strtolower(substr($data['like_times'], -1));
    if ($like_times_unit == 'w') {
       $data['like_times'] = intval(floatval($data['like_times']) * 10000);
    } else if ($like_times_unit == 'k') {
        $data['like_times'] = intval(floatval($data['like_times']) * 1000);
    }

    return $data;
}
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末纸镊,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子稿静,更是在濱河造成了極大的恐慌,老刑警劉巖勋篓,帶你破解...
    沈念sama閱讀 219,270評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件惜互,死亡現(xiàn)場離奇詭異,居然都是意外死亡瘾英,警方通過查閱死者的電腦和手機橙依,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,489評論 3 395
  • 文/潘曉璐 我一進店門证舟,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人票编,你說我怎么就攤上這事褪储。” “怎么了慧域?”我有些...
    開封第一講書人閱讀 165,630評論 0 356
  • 文/不壞的土叔 我叫張陵鲤竹,是天一觀的道長。 經常有香客問我昔榴,道長辛藻,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,906評論 1 295
  • 正文 為了忘掉前任互订,我火速辦了婚禮吱肌,結果婚禮上,老公的妹妹穿的比我還像新娘仰禽。我一直安慰自己氮墨,他們只是感情好,可當我...
    茶點故事閱讀 67,928評論 6 392
  • 文/花漫 我一把揭開白布吐葵。 她就那樣靜靜地躺著规揪,像睡著了一般。 火紅的嫁衣襯著肌膚如雪温峭。 梳的紋絲不亂的頭發(fā)上猛铅,一...
    開封第一講書人閱讀 51,718評論 1 305
  • 那天,我揣著相機與錄音凤藏,去河邊找鬼奸忽。 笑死,一個胖子當著我的面吹牛揖庄,可吹牛的內容都是我干的栗菜。 我是一名探鬼主播,決...
    沈念sama閱讀 40,442評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼蹄梢,長吁一口氣:“原來是場噩夢啊……” “哼疙筹!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 39,345評論 0 276
  • 序言:老撾萬榮一對情侶失蹤腌歉,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后齐苛,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體翘盖,經...
    沈念sama閱讀 45,802評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,984評論 3 337
  • 正文 我和宋清朗相戀三年凹蜂,在試婚紗的時候發(fā)現(xiàn)自己被綠了馍驯。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,117評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡玛痊,死狀恐怖汰瘫,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情擂煞,我是刑警寧澤混弥,帶...
    沈念sama閱讀 35,810評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站对省,受9級特大地震影響蝗拿,放射性物質發(fā)生泄漏。R本人自食惡果不足惜蒿涎,卻給世界環(huán)境...
    茶點故事閱讀 41,462評論 3 331
  • 文/蒙蒙 一哀托、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧劳秋,春花似錦仓手、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,011評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至岁忘,卻和暖如春辛慰,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背干像。 一陣腳步聲響...
    開封第一講書人閱讀 33,139評論 1 272
  • 我被黑心中介騙來泰國打工帅腌, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人麻汰。 一個月前我還...
    沈念sama閱讀 48,377評論 3 373
  • 正文 我出身青樓速客,卻偏偏與公主長得像,于是被迫代替她去往敵國和親五鲫。 傳聞我的和親對象是個殘疾皇子溺职,可洞房花燭夜當晚...
    茶點故事閱讀 45,060評論 2 355

推薦閱讀更多精彩內容

  • 自己做dede的開發(fā)時間也比較長了,基本上常用的函數(shù)都知道在哪個文件里面,但是時間一長浪耘,也有點模糊了乱灵,俗話說:好記...
    大劉的英語世界閱讀 1,694評論 1 9
  • "use strict";function _classCallCheck(e,t){if(!(e instanc...
    久些閱讀 2,031評論 0 2
  • 1. 如何數(shù)年如一日的早起? 思想:1)習慣/儀式吸引我們行事七冲,而不是意志和紀律痛倚。習慣的力量可以確保我們在不是非常...
    EdwardMa閱讀 224評論 0 0
  • 早晨一直跑到泰山腳下,去年爬過了泰山澜躺,這次沒有計劃蝉稳。越跑越自豪,我這是在用雙腳丈量世界啊掘鄙。 很奇怪的事 如果走一公...
    史終成長閱讀 260評論 0 0
  • 凍僵的兩旁樹 伸展著干干靜靜帶著疤痕的胳膊 四仰八叉朝著天 整整齊齊排列著設計好的故事 壓抑的黑褐色 爬上白茫茫的...
    shuiwusenlin閱讀 246評論 2 5