日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python程序员专用壁纸_程序员如何一键“Get”高清壁纸?

發布時間:2023/12/10 python 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python程序员专用壁纸_程序员如何一键“Get”高清壁纸? 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

原標題:程序員如何一鍵“Get”高清壁紙?

作者 | 沈仲強

責編| 郭 芮

Unsplash是個高清攝影圖片的網站,里面的照片非常精美,分辨率也很高。最重要的是,所有的照片都沒有版權,無須向原作者申請授權,即可任意使用。

最近閑暇的時候寫了個爬蟲爬了下Unsplash上的那些高贊的壁紙,爬蟲原理非常簡單,就是爬取所有的壁紙,然后篩選那些贊數最高的圖片。

第一步我們爬取Unsplash所有的壁紙圖片信息,并存入MongoDB。

代碼如下:

defget_image_by_page(page_no):

url = "https://unsplash.com/napi/collections/1065976/photos?page={}&per_page=10&order_by=latest&share_key=a4a197fc196734b74c9d87e48cc86838".format(page_no)

r = requests.get(url, verify= False)

data = r.json()

returndatadef get_images():

page_no = 1

client = pymongo.MongoClient()

db = client[ "unsplash"]

whileTrue:

result = get_image_by_page(page_no)

iflen(result) == 0:

break

db.wallpaper.insert_many(result)

print(page_no)

page_no += 1

time.sleep( 10)

爬下來的數據里面包含了幾個重要的字段。

我們最關心的就是likes這個字段,這個里面存了圖片的贊數,后續我們篩選高贊圖片的時候會用到。

還有兩個字段分別是width和height,這是圖片的寬度和高度,因為我們這里關注的是桌面壁紙,所以只關心寬度大于高度的那些壁紙。

爬完圖片信息后,接下來我們從數據庫篩選高贊圖片。

代碼如下:

def get_top_liked_images():

client = pymongo.MongoClient()

db = client[ "unsplash"]

cursor = db.wallpaper.aggregate([

{ "$match": { "likes": { "$gte": 1000}}}

])

path= os. path.dirname(__file__)

path= os. path.join( path, "wallpaper")

foritem incursor:

url = item[ "urls"][ "raw"]

width = item[ "width"]

height = item[ "height"]

ifwidth <= height:

continue

r = requests.get(url, verify=False)

filename = "{}.jpg". format(int( time. time()))

filepath = os. path.join( path, filename)

with open(filepath, "wb") as f:

f. write(r.content)

print(filepath)

time.sleep( 10)

這里我們會根據圖片信息里的URL去下載圖片。需要注意的是,如果過于頻繁地爬取Unsplash,會導致爬蟲被封,所以這里每次下載完都會睡個10秒鐘。

以上,就可以爬取出精美的高清壁紙啦。

作者:沈仲強,資深Python程序員,先后供職于Morgan Stanley和ebay,擅長爬蟲、Web開發、數據分析。

本文系作者投稿,版權歸原作者所有。返回搜狐,查看更多

責任編輯:

總結

以上是生活随笔為你收集整理的python程序员专用壁纸_程序员如何一键“Get”高清壁纸?的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。