用python下载xxxx网站封面作品的所有图片
来源:互联网 发布:java 拼接字符串 编辑:程序博客网 时间:2024/04/27 15:26
1.识别出封面作品集,
2.点击打开作品集
3.当作品集下载完成后,下载图片
技术实现:
1.先研究和分析封面作品集的html元素,判断出集品集是放在那个元素下 [这个是重点]
1.1 经过研究发现封面作品的连接格式如下:
<div class="img-box">
<a href="http://photo.xxxx.cn/lastphoto-htx-id-5570754-p-0.xhtml" target="_blank" title="百般红紫斗芳菲">1.2 打开作品集后,发现jpg图片都是存储在如下格式下:
<img title="梦回_4" data-photo-item-id="223088169" item="223088169" role="playLivephoto" src="http://www.xxxx.cn/css_common/v3/images/img_loading.gif" data-lazyload-img-src="http://image18-c.xxxx.cn/myxxxx/myphoto/20170402/23/5439720170402231558067_640.jpg?900x1350_120" data_org_bimg ="http://image18-c.xxxx.cn/myxxxx/myphoto/20170402/23/5439720170402231558067.jpg?900x1350_120" data_img_small="http://image18-c.xxxx.cn/myxxxx/myphoto/20170402/23/5439720170402231558067_640.jpg?900x1350_120" class="photo-item" onload="if(Sys.ie6)resize_img(this,994,100000)"/>
2.用urllib2打开封面有作品页,并把结果返回给我BeautifulSoup进行格式化。
html=urllib2.urlopen(url) 返回url的格式集
2.通过beautifulsoup读取这些元素的值
html_format=BeautifulSoup(html.read(),'html5lib')tagset=html_format.find_all("div") ;返回找到的所有tag的结果集
访问方法:
for tag in tagset:
tag["tag属性"][-1] 返回tag属性值
4.发现作品图片,并下载另存为
urllib.urlretrieve(url,save path)
5.通过以上方法的组合,我们批量下载到你想要的图片
具体代码实现:
import urllib2
import urllib
from bs4 import BeautifulSoup
def get_url(input_url):
url_set=[]
url=urllib2.urlopen(input_url)
html=BeautifulSoup(url.read(),'html5lib')
div=html.find_all('div')
for i in div:
try:
#print(i["class"][0])
if i["class"][0]=="img-box":
#print (i.a["href"])
url_set.append(i.a["href"])
except Exception as e:
pass
return url_set
def open_url(urlset,save_path):
file_no=0
img_path=""
for i in urlset:
html=urllib2.urlopen(i)
print("opening")
print(i)
html_format=BeautifulSoup(html.read(),"html5lib")
imgset=html_format.find_all("img")
for img in imgset:
try:
file_no=file_no+1
img_path=img["data_org_bimg"][0:-1]
file_name=img_path[img_path.find(".jpg")-5:img_path.find(".jpg")+4]
file_path=save_path+file_name
print(file_path)
try:
urllib.urlretrieve(img_path,file_path)
except Exception as e:
print(e)
except Exception as e:
pass
if __name__=='__main__':
urlset=get_url("http://photo.xxxx.cn/vision.htx&p=1&index_type=hot&tid=-1&gid=0#list")
open_url(urlset,"d:\xxxx\model\\")
- 用python下载xxxx网站封面作品的所有图片
- Python 爬虫-爬取pixiv特定搜索结果的所有作品-抓取 分析 下载
- python使用requests包爬取Pixiv图片--关注画师的所有作品
- python使用requests和BeautifulSoup包爬取Pixiv图片--指定tag下的所有作品
- Python下载网页所有图片
- python 爬虫下载网站图片
- python 爬网站 下载图片
- 使用nodejs下载网站所有图片
- Python爬虫学习笔记——自动爬取XX网站,下载种子,封面,番号
- python爬虫下载网站所有文件
- python爬虫(豆瓣影评requests版并下载电影封面图片)
- Python爬虫下载网站上的图片到本地
- python抓取网站的图片并下载到本地
- python图书搜索与书籍封面下载
- Python爬虫小实践:下载妹子图www.mzitu.com网站上所有的妹子图片,并按相册名字建立文件夹分好文件名
- 我的网站作品
- python抓取网站88titienmae88中的“图片区”的第一页的所有图片
- 我的作品下载
- 图像压缩编码的必要性&可行性&分类&图像压缩的评价指标
- mysql创建索引
- HTML中设置输入框为只读状态的方法
- git基础命令
- 使用mina部署rails应用时遇到的问题们
- 用python下载xxxx网站封面作品的所有图片
- Hive内部表在HDFS中的目录结构
- Android系统模拟位置的使用方法
- iMindMap和Mindmanager优劣对比
- 干货|机器学习算法工程师必须掌握的七大技能
- Linux的nmon监控结果分析文件中网络分析NET
- u3d实现自动寻路
- SD卡读写
- Log4j详细使用教程