发布时间:2023-08-15 12:30
目录
0 写在前面
1 Python爬取美女照片
1.1 留恋忘返的网址
1.2 Python代码
1.3 结果
2 Python实现
2.1 条件准备
2.2 运行展示
2.3 Python实现
今天这篇文章我准备了很久,但是运行出来很值得。
属于散漫闲谈,毕竟涉及到一个浪漫的思想系统,故建议读者按目录次序逐一浏览,免得骤然跌入幽暗的迷宫找不到来时的路,它不足为你揭示全部问题的答案,但若能让人胸中升起一朵朵疑云,也未尝不会酿成晚霞斑斓的别一番景致,万一它居然给你带来了一场精神世界的苦雨,那就借机洗刷一下原来存放在那儿的“躺平”上的尘埃吧。
或许,雨过云收,神驰的天地更清朗.......
我们今天的任务很明确,我先系统梳理一下:
1.先用Python爬取一波漂亮的美女照片;
2.然后Python中炫酷的代码实现;
3.最后用matlab伺候,得到相同的结果。
写到这里,脑袋里面突然蹦出一张图片:
站长素材-分享综合设计素材的平台 (chinaz.com)
#~~~~欢迎关注公众号:电力系统与算法之美~~~~~~~~~~~~·
#~~~~~~~~~导入相关库~~~~~~~~~~~~~~~~~~~~·
import urllib.request
from lxml import etree
#~~~~~~~~~1.请求对象的定制~~~~~~~~~~~~~~~~~
def create_request(page):
if (page == 1):
url = \'https://sc.chinaz.com/tag_tupian/YaZhouMeiNv.html\'
else:
url = \'https://sc.chinaz.com/tag_tupian/yazhoumeinv_\' + str(page) + \'.html\'
# print(url)
headers = {
\'User-Agent\': \'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.104 Safari/537.36\'
}
request = urllib.request.Request(url=url, headers=headers)
return request
#~~~~~~~~~~~2.获取网页的源码~~~~~~~~~~~~~~~~~~~~~
def get_content(request):
response = urllib.request.urlopen(request)
content = response.read().decode(\'utf-8\')
return content
#~~~~~~~~~~~~~~~~~~~3.下载图片~~~~~~~~~~~~~~~~~~~~~~~~~~
def down_img(content):
# 下载文件格式:urllib.request.urlretrieve(\'图片地址\',\'文件的名字\')
tree = etree.HTML(content)
name_list = tree.xpath(\'//div[@id = \"container\"]//a/img/@alt\')
# 一般涉及到图片的网站,都会进行懒加载,要把src换成src2(懒加载时,src会以src2出现)
src_list = tree.xpath(\'//div[@id = \"container\"]//a/img/@src2\')
# print(len(name_list))
# print(len(src_list))
for i in range(len(name_list)):
name = name_list[i]
src = src_list[i]
url = \'https:\' + src
url = url.replace(\'_s\', \'\')
urllib.request.urlretrieve(url=url, filename=\'./meinv/\' + name + \'.jpg\')
#~~~~~~~~~运行~~~~~~~~~~~~~~~
if __name__ == \'__main__\':
start_page = int(input(\'请输入起始页码:\'))
end_page = int(input(\'请输入终止页码:\'))
for page in range(start_page, end_page + 1):
#~~~~1.定制请求对象~~~~~
request = create_request(page)
#~~~~2.获取网页源码~~~~~
content = get_content(request)
#~~~~~3.解析源码并下载图片~~~
down_img(content)
温馨提示:meinv这个文件夹是提前建立的。
由1中爬取的照片,我们就可以为接下来的事做准备啦。选取十二张照片,如图:
运行出来比下面这个还炫酷:
CSS3制作3D图片立方体旋转特效
完整资源分享:链接:https://pan.baidu.com/s/1fZOYyRjAUgY_0Y6a9q-P0A
提取码:laij