python 爬虫 美桌网 50行代码爬取明星写真摄影图片
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python 爬虫 美桌网 50行代码爬取明星写真摄影图片,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2155字,纯文字阅读大概需要4分钟。
内容图文
好几天没更图片爬虫了,今天就简单的趴一下美桌网:
运行效果如下:
其中,每位明星单独一个文件夹,写真的册也是单独一个文件夹,非常的银杏
源码:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2020/12/15 18:14
# @Author : huni
# @File : 美桌网.py
# @Software: PyCharm
import requests
from lxml import etree
import os
if __name__ == '__main__':
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.183 Safari/537.36'
}
url = 'http://www.win4000.com/mt/star.html'
resp = requests.get(url=url,headers=headers).text
tree = etree.HTML(resp)
li_list = tree.xpath('/html/body/div[4]/div/div[2]/ul/li')
for li in li_list:
href = li.xpath('./a/@href')[0]
resp1 = requests.get(url=href,headers=headers).text
tree1 = etree.HTML(resp1)
href1_list = list(set(tree1.xpath('/html/body/div[4]/div/div[3]/div[1]/div[2]/div//@href')))
href1_list.append(href)
title = tree1.xpath('/html/head/title/text()')[0]
m_path = './明星图片'
if not os.path.exists(m_path):
os.mkdir(m_path)
title_path = m_path + f'/{title}'
if not os.path.exists(title_path):
os.mkdir(title_path)
for href1 in href1_list:
resp2 = requests.get(url=href1,headers=headers).text
tree2 = etree.HTML(resp2)
href2_list = tree2.xpath('/html/body/div[4]/div/div[3]/div[1]/div[1]/div[2]/div/div/ul//@href')
for href2 in href2_list:
resp3 = requests.get(url=href2,headers=headers).text
tree3 = etree.HTML(resp3)
page_num = int(tree3.xpath('/html/body/div[4]/div/div[2]/div/div[1]/div[1]/em/text()')[0])
name = tree3.xpath('/html/head/title/text()')[0]
name_path = title_path + f'/{name}'
if not os.path.exists(name_path):
os.mkdir(name_path)
for i in range(1,page_num+1):
every_href = href2.replace('.html',f'_{i}.html')
resp4 = requests.get(url=every_href,headers=headers).text
tree4 = etree.HTML(resp4)
src = tree4.xpath('//*[@id="pic-meinv"]/a/img/@src')[0]
jpg_data = requests.get(url=src,headers=headers).content
jpg_name = src.split('/')[-1]
jpg_path = name_path + f'/{jpg_name}'
with open(jpg_path,'wb') as fp:
fp.write(jpg_data)
print(jpg_name,'下载完成')
单线程如此,多线程内容还可以参考我之前的博客
好了,今天就码到这里来,如果各位看官觉得不错,可以多多投喂小编哟
内容总结
以上是互联网集市为您收集整理的python 爬虫 美桌网 50行代码爬取明星写真摄影图片全部内容,希望文章能够帮你解决python 爬虫 美桌网 50行代码爬取明星写真摄影图片所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。