摘要:本人長期出售超大量微博數據旅游網站評論數據,并提供各種指定數據爬取服務,。同時歡迎加入社交媒體數據交流群前言最近在做機器學習下的人臉識別的學習,機器學習這個東西有點暴力,很大程度上靠訓練的數據量來決定效果。
本人長期出售超大量微博數據、旅游網站評論數據,并提供各種指定數據爬取服務,Message to YuboonaZhang@Yahoo.com。同時歡迎加入社交媒體數據交流群:99918768
前言最近在做機器學習下的人臉識別的學習,機器學習這個東西有點暴力,很大程度上靠訓練的數據量來決定效果。為了找數據,通過一個博客的指導,瀏覽了幾個很知名的數據集。
幾個大型數據集是通過發郵件申請進行下載,幾個小型數據集直接在網頁的鏈接下載,還有一個Pubfig數據集則是提供了大量圖片的鏈接來讓我們自己寫程序來下載。
權衡了數據量的需求,最后選擇Pubfig的數據集,于是就自己寫了一個python圖片采集程序,里面用了urllib和requests兩種方法.
分析Pubfig提供的下載文件的特點
這個數據文件提供了在數據集中出現的所有人物
這個數據文件提供了每個人的urls
可以看出來這個數據集的處理其實非常簡單了,可以通過readlines的方式存進列表用空格分開一下數據就可以把urls提取出來了。
處理一下urls文件urls在文件的中后部,寫個文件把它單純地提取出來,方便使用。
我多帶帶把Miley_Cyrus的部分提取出來放了一個txt文件
pic_url = [] with open("./Miley_Cyrus.txt") as f: for i in f.readlines(): pic_url.append(i.strip(" ")) urls = [] for s in pic_url: _, _, _, url, _, _ = s.split() urls.append(url) # 寫入到文件里面 with open("url.data", "w") as f: for i in urls: f.write(i) f.write(" ")爬取urls圖片 1. Urllibs方法
import urllib.request as request import socket import os # 在同級目錄新建文件夾存圖片 os.mkdir("./img") # 為請求增加一下頭 user_agent = "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.62 Safari/537.36" headers = ("User-Agent", user_agent) opener = request.build_opener() opener.addheaders = [headers] request.install_opener(opener) # 設定一下無響應時間,防止有的壞圖片長時間沒辦法下載下來 timeout = 20 socket.setdefaulttimeout(timeout) # 從文件里面讀urls urls = [] with open("./url.data") as f: for i in f.readlines(): if i != "": urls.append(i) else: pass # 通過urllibs的requests獲取所有的圖片 count = 1 bad_url = [] for url in urls: url.rstrip(" ") print(url) try: pic = request.urlretrieve(url, "./img3/%d.jpg" % count) print("pic %d" % count) count += 1 except Exception as e: print(Exception, ":", e) bad_url.append(url) print(" ") print("got all photos that can be got") # 把沒有抓取到的urls保存起來 with open("bad_url3.data", "w") as f: for i in bad_url: f.write(i) f.write(" ") print("saved bad urls")2. Requests方法
import requests import socket import os # 在同級目錄新建文件夾存圖片 os.mkdir("./img") # 設定一下無響應時間,防止有的壞圖片長時間沒辦法下載下來 timeout = 20 socket.setdefaulttimeout(timeout) # 從文件里面讀urls urls = [] with open("./url.data") as f: for i in f.readlines(): if i != "": urls.append(i) else: pass # 為請求增加一下頭,獲取圖片 user_agent = "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.62 Safari/537.36" headers = { "User-Agent": user_agent } bad_url = [] count = 1 for url in urls: url.rstrip(" ") print(url) try: pic = requests.get(url, headers=headers) with open("./img2/%d.jpg" % count, "wb") as f: f.write(pic.content) f.flush() print("pic %d" % count) count += 1 except Exception as e: print(Exception, ":", e) bad_url.append(url) print(" ") print("got all photos that can be got") # 保存壞鏈接 with open("bad_url.data", "w") as f: for i in bad_url: f.write(i) f.write(" ") print("saved bad urls")個人博客
8aoy1.cn
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/41349.html
摘要:在這之前,還是有必要對一些概念超輕量級反爬蟲方案后端掘金前言爬蟲和反爬蟲日益成為每家公司的標配系統。 爬蟲修煉之道——從網頁中提取結構化數據并保存(以爬取糗百文本板塊所有糗事為例) - 后端 - 掘金歡迎大家關注我的專題:爬蟲修煉之道 上篇 爬蟲修煉之道——編寫一個爬取多頁面的網絡爬蟲主要講解了如何使用python編寫一個可以下載多頁面的爬蟲,如何將相對URL轉為絕對URL,如何限速,...
摘要:時間永遠都過得那么快,一晃從年注冊,到現在已經過去了年那些被我藏在收藏夾吃灰的文章,已經太多了,是時候把他們整理一下了。那是因為收藏夾太亂,橡皮擦給設置私密了,不收拾不好看呀。 ...
摘要:學了大半年之后成功轉行做前端了。包含大量其他神經網絡庫中的包裝器和抽象,其中最值得注意的是,其中也包含一些機器學習的實用模塊。它是輕量級可擴展的神經網絡工具包,同時擁有友好的界面,可供機器學習的訓練和預測使用。 題記:大二的時候發現人生苦短,所以信了拍神,開始學Python。學了大半年之后成功轉行做前端了。來寫個教程幫助大家入門Python。 Python零基礎入門 零基礎入門就得從最...
摘要:學習筆記七數學形態學關注的是圖像中的形狀,它提供了一些方法用于檢測形狀和改變形狀。學習筆記十一尺度不變特征變換,簡稱是圖像局部特征提取的現代方法基于區域圖像塊的分析。本文的目的是簡明扼要地說明的編碼機制,并給出一些建議。 showImg(https://segmentfault.com/img/bVRJbz?w=900&h=385); 前言 開始之前,我們先來看這樣一個提問: pyth...
閱讀 1882·2021-11-11 16:55
閱讀 2064·2021-10-08 10:13
閱讀 739·2019-08-30 11:01
閱讀 2155·2019-08-29 13:19
閱讀 3277·2019-08-28 18:18
閱讀 2620·2019-08-26 13:26
閱讀 579·2019-08-26 11:40
閱讀 1864·2019-08-23 17:17