尋找高顏值小姐姐,難嗎!直到我發現了這個Python庫
阿新 • • 發佈:2019-01-11
Python真的是無所不能,有同學說萬能的Python,其實就是指的Python的庫真的很多很多!坐地鐵的時候,經常看到周圍人刷抖音的,看短視訊。抖音上面的美女小姐姐真的是很多,今天在Github上一逛,發現關於抖音的庫好多啊!
有81個repo,其中點贊最多的是Douyin-Bot,這個庫有近5000多顆星,近1000個fork,厲害啊!我們一起來看看這個神奇的庫!
抖音機器人
這個庫的作者叫 "wangshub",他用 Python 加ADB 做了一個 Python 抖音機器人 Douyin-Bot,有點類似與當年風靡一時用機器人玩微信跳一跳遊戲。
1.看一些它的原理:
- 是利用ADB工具,讓手機和電腦相連
- 然後開啟抖音短視訊 App,擷取手機上美女小姐姐的圖片
- 然後對圖片進行壓縮,最厲害的部分來了
- 作者利用騰訊的開放的AI介面,進行人臉識別,進行圖形切割和對比
- 當顏值大於門限值
BEAUTY_THRESHOLD
時,點贊並關注; - 然後迴圈下一頁,繼續第一步;
2.看看程式獲取的臉部圖片
3.研究一下庫的入口原始碼
def main(): """ main :return: """ print('程式版本號:{}'.format(VERSION)) print('啟用視窗並按 CONTROL + C 組合鍵退出') debug.dump_device_info() screenshot.check_screenshot() while True: next_page() time.sleep(1) screenshot.pull_screenshot() resize_image('autojump.png', 'optimized.png', 1024*1024) with open('optimized.png', 'rb') as bin_data: image_data = bin_data.read() ai_obj = apiutil.AiPlat(AppID, AppKey) rsp = ai_obj.face_detectface(image_data, 0) major_total = 0 minor_total = 0 if rsp['ret'] == 0: beauty = 0 for face in rsp['data']['face_list']: print(face) face_area = (face['x'], face['y'], face['x']+face['width'], face['y']+face['height']) print(face_area) img = Image.open("optimized.png") cropped_img = img.crop(face_area).convert('RGB') cropped_img.save(FACE_PATH + face['face_id'] + '.png') # 性別判斷 if face['beauty'] > beauty and face['gender'] < 50: beauty = face['beauty'] if face['age'] > GIRL_MIN_AGE: major_total += 1 else: minor_total += 1 # 是個美人兒~關注點贊走一波 if beauty > BEAUTY_THRESHOLD and major_total > minor_total: print('發現漂亮妹子!!!') thumbs_up() follow_user() else: print(rsp) continue
思路還是非常清晰的:
- 一開始進行初始化的工作,檢查Py的版本,檢查手機ada 是否連結好了,螢幕是否能截圖
- 接著開始一個死迴圈,不斷的截圖每一頁上的美女的圖片,壓縮儲存!
- 然後讀取圖片,呼叫AI介面進入分析,返回一個ret字典資訊,對裡面顏值和年齡進行分析
- 最後對顏值高的美女自動點贊,關注!