python requests返回值为200 但是text无内容_爬取高清无版权美图
01 前言
做公眾號,總是會需要使用一些圖片做封面或背景。我的公眾號的圖片有兩種來源:一是通過創可貼自己動手修改下就可以用了,還一種就是在網上下載圖片。
那如何下載高清并且可以供使用(無版權)的圖片了?我是使用的pexels網站下載來的圖片(https://www.pexels.com/),這個網站圖片高清,質量好,而且無版權,可以供免費使用。所以,本文教大家使用Python爬取Pexels圖片,并保存在本地。
02 網站分析
首先,我們搜索Scenery,可以找到風景圖。
https://www.pexels.com/search/Scenery/
該網站簡單,不是異步加載,我們可以用lxml庫來進行爬蟲,其核心就是找到循環點。
接著,我們考慮換頁的url變換情況,我們按F12,打開開發者工具,查看url的變換情況。
我們發現,只需要換個page的頁數即可。
https://www.pexels.com/search/Scenery/?page=
03 爬蟲代碼
import requests
from lxml import etree
headers = {
'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36'
}
path = '圖片/'
urls = ['https://www.pexels.com/search/Scenery'+'/?page={}'.format(str(i)) for i in range(1,10)]
for url in urls:
res = requests.get(url, headers=headers)
html = etree.HTML(res.text)
infos = html.xpath('//div[@]/div')
for info in infos:
img = info.xpath('article/a[1]/img/@src')
if len(img) == 1:
img = img[0]
print(img)
data = requests.get(img, headers=headers)
f = open(path + img.split('?')[0][-11:], 'wb')
f.write(data.content)
f.close()
今天的分享就到這了,我們下期再見~
總結
以上是生活随笔為你收集整理的python requests返回值为200 但是text无内容_爬取高清无版权美图的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C++ UNICODE 编程从入门到精通
- 下一篇: postman 400 bad requ