Python爬取高顏值美女(爬蟲+人臉檢測+顏值檢測)附學習教程

1 數據源

知乎話題『美女』下所有問題中回答所出現的圖片

2 抓取工具

Python 3,並使用第三方庫 Requests、lxml、AipFace,代碼共 100 + 行

3 必要環境

  • Mac / Linux / Windows (Linux 沒測過,理論上可以。Windows 之前較多反應出現異常,後查是 windows 對本地文件名中的字符做了限制,已使用正則過濾)
  • 無需登錄知乎(即無需提供知乎帳號密碼)
  • 人臉檢測服務需要一個百度雲帳號(即百度網盤 / 貼吧帳號)

4 人臉檢測庫

AipFace,由百度雲 AI 開放平臺提供,是一個可以進行人臉檢測的 Python SDK。可以直接通過 HTTP 訪問,免費使用。

5 檢測過濾條件

  • 過濾所有未出現人臉圖片(比如風景圖、未露臉身材照等)
  • 過濾所有非女性(在抓取中,發現知乎男性圖片基本是明星,故不考慮;存在 AipFace 性別識別不準的情況)
  • 過濾所有非真實人物,比如動漫人物 (AipFace Human 置信度小於 0.6)
  • 過濾所有顏值評分較低圖片(AipFace beauty 屬性小於 45,為了節省存儲空間;再次聲明,AipFace 評分無任何客觀性)

6 實現邏輯

  • 通過 Requests 發起 HTTP 請求,獲取『美女』下的部分討論列表
  • 通過 lxml 解析抓取到的每個討論中 HTML,獲取其中所有的 img 標籤相應的 src 屬性
  • 通過 Requests 發起 HTTP 請求,下載 src 屬性指向圖片(不考慮動圖)
  • 通過 AipFace 請求對圖片進行人臉檢測
  • 判斷是否檢測到人臉,並使用 『4 檢測過濾條件』過濾
  • 將過濾後的圖片持久化到本地文件系統,文件名為 顏值 + 作者 + 問題名 + 序號
  • 返回第一步,繼續

7 抓取結果

直接存放在文件夾中(angelababy 實力出境)。另外說句,目前抓下來的圖片,除 baby 外,88 分是最高分。個人對其中的排序表示反對,老婆竟然不是最高分


Python爬取高顏值美女(爬蟲+人臉檢測+顏值檢測)附學習教程




Python爬取高顏值美女(爬蟲+人臉檢測+顏值檢測)附學習教程




Python爬取高顏值美女(爬蟲+人臉檢測+顏值檢測)附學習教程



代碼


Python爬取高顏值美女(爬蟲+人臉檢測+顏值檢測)附學習教程


Python爬取高顏值美女(爬蟲+人臉檢測+顏值檢測)附學習教程


9 運行準備

  • 安裝 Python 3,Download Python
  • 安裝 requests、lxml、baidu-aip 庫,都可以通過 pip 安裝,一行命令
  • 申請百度雲檢測服務,免費。人臉識別-百度AI

小編這裡有一套Python自學從入門到精通的全套視頻學習資料,現在免費分享給大家

獲取方式:轉發此文+關注 並 私信小編 “ 學習”,即可免費獲取哦!

2019年最新python教程

如果你處於想學python或者正在學習python,python的教程不少了吧,但是是最新的嗎?

說不定你學了可能是兩年前人家就學過的內容,在這小編分享一波2019最新的python全套教程最後小編為大家準備了6月份新出的python自學視頻教程,共計約200G,免費分享給大家!

2019Python自學教程全新升級為《Python+數據分析+機器學習》,七大階段能力逐級提升,打造技能更全面的全棧工程師。

Python爬取高顏值美女(爬蟲+人臉檢測+顏值檢測)附學習教程

Python爬取高顏值美女(爬蟲+人臉檢測+顏值檢測)附學習教程

Python爬取高顏值美女(爬蟲+人臉檢測+顏值檢測)附學習教程

Python爬取高顏值美女(爬蟲+人臉檢測+顏值檢測)附學習教程

階段一:Python基礎知識和高級特性

Python語法基礎

Python字符串解析

Python時間和日曆

Python文件操作

Python面向對象

併發編程

函數式編程

正則表達式

設計模式

排序算法

異常

模塊

階段二:Linux基礎

shell操作

系統管理

常見Linux系統

HDFS搭建

階段三:數據庫原理和sql優化

Linux下MySQL數據庫

數據庫設計和SQL標準

Python數據庫操作的庫

Linux下MongoDB非關係型數據庫

SQL優化和數據庫優化

ORM對象關係映射基本思想

階段四:前端web開發

Html

CSS

PC端頁面開發實戰流程

Bootstrap

html5和css3

JavaScript

JQuery

階段五:Python Web後端開發

Django 框架開發

Nginx配置和uWSGI部署

RESTful接口開發

Flask框架開發

電商平臺項目

BBS論壇系統

階段六:爬蟲和數據分析

第一個Python網絡爬蟲

專業HTTP分析工具Fiddler的使用

實際爬蟲

Python編碼問題

urllib2 的使用

TesseractOCR語言模型爬取使用帶驗證碼登錄的網站

Beautiful Soup

XPath & CSS選擇器

PhantomJS

Selenium Webdriver

Scrapy大型框架使用代理服務器爬取

Scrapy分佈式集群多代理爬蟲Redis分佈式集群

Redis MongoDB在爬蟲裡的應用

數據分析工具與模塊

階段七:Python人工智能

機器學習

深度學習

獲取方式:轉發此文+關注 並 私信小編 “ 學習”,即可免費獲取哦!


分享到:


相關文章: