欢迎访问
- Snippet:2021/6/24 8:36 下午
- 致谢:
- 问题概述: 🐳 🐭 使用Python获取朴缜《东方幻月录》中古风城市图片 🐳 🐭
- 方案细节
🐳 介绍
txt> 画家朴缜(zhěn)画的《东方幻月录》这几天在微博上火了!他用传统题材的现代表现手法,结合了中国各个城市特有的人文风貌、历史故事、建筑特点等元素为每个城市都打上了独特的印记,每一幅都美轮美奂!今天我们就使用Python来获取朴缜先生的几幅作品。本文纯技术角度出发,教你如何用Python获取照片。学会后同理也能获取其他的照片,技术原理是一致的。
🐳 准备
txt> 系统:Macos M1
Python版本:Python 3.9.4
txt> Python第三方库:
requests 2.25.1
jsonpath 0.82
bash> pip3 install requests
pip3 install jsonpath
pip3 install bs4
🐳 思路
txt> 请求数据 ➡️ 获取响应内容 ➡️ 解析内容 ➡️ 保存数据
🐳 步骤
# -*- coding: utf-8 -*-
# User:www.redelego.cn
# Last Update:2021/6/24 8:54 下午
def fun_atool_request_url(pv_url_1804):
l_obj_headers_1756 = {
'Cookie': 'OCSSID=4df0bjva6j7ejussu8al3eqo03',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36'
'(KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36',
}
import requests
l_obj_response_1806 = requests.get(pv_url_1804, timeout=30, headers=l_obj_headers_1756)
l_obj_response_1806.encoding = r"utf-8"
return l_obj_response_1806.text
def fun_atool_img_get_url(pv_content_2114):
# txt> 图片定位selector
larr_images = []
lv_sel_img = "#mp-editor > p > img"
from bs4 import BeautifulSoup
l_obj_soup_1811 = BeautifulSoup(pv_content_2114, "html.parser")
l_obj_articles_1821 = l_obj_soup_1811.select(lv_sel_img)
for lv_one_image in l_obj_articles_1821:
larr_images.append(lv_one_image.get('src'))
return larr_images
def fun_atool_img_save2f(parr_image_urls_2127):
import requests
for lv_img_url in parr_image_urls_2127:
l_obj_headers_1756 = {
'Cookie': 'OCSSID=4df0bjva6j7ejussu8al3eqo03',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36'
'(KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36',
}
l_obj_response_1806 = requests.get(lv_img_url, timeout=30, headers=l_obj_headers_1756)
lobj_img_data_2130 = l_obj_response_1806.content
with open('./res/' + lv_img_url.replace('http://5b0988e595225.cdn.sohucs.com/images/20190727/',''), 'wb') as f:
f.write(lobj_img_data_2130)
if __name__ == '__main__':
lv_page_url_2059 = "https://www.sohu.com/a/329610350_611289"
# txt> 获取网页内容,保存为文本。
lv_content_2118 = fun_atool_request_url(lv_page_url_2059)
print(lv_content_2118)
# txt> 解析网页获取图片🔗数组。
larr_images_2126 = fun_atool_img_get_url(lv_content_2118)
# txt> 传入图片🔗数组,保存图片到文件。
fun_atool_img_save2f(larr_images_2126)
- 🐳 Head First Python 中文版(Paul Barry著477p)
- 分享🐴🐴: 6h93
- 🐳 Python编程-从入门到实践(美Eric Matthes 袁国忠译 482p)
- 分享🐴🐴: 9fb8
- 🐳 Python Cook Book(陈润译 628p)
- 分享🐴🐴: jwmt
- 🐳 深度学习入门-基于Python的理论与实现(陆宇杰译 314p)
- 分享🐴🐴: 6x9m
- 🐳 Python 基础教程 Exploring Python Basics(美Naomi Ceder181p)
- 分享🐴🐴: 4wu6
- 🐳 Deep Learning With Python(美Nikhil Ketkar 169p)
- 分享🐴🐴: 24tc
- 🐳 流畅的Python(安道译 782p)
- 分享🐴🐴: 3bi2
- 🐳 Python 数据处理-动物书(张亮译 402p)
- 分享🐴🐴: ph84
- 🐳 父与子的编程之旅-与小卡特一起学Python(苏金国译 458p)
- 分享🐴🐴: xkwm
- 🐳 Python基础教程-第2版(美Magnus Lie Hetland 司维译487p)
- 分享🐴🐴: f5p4