时间:2021-05-18
对路使用ajax实现异步加载内容,在它的js代码中找到了相关代码
type : 'POST', url : '/index.php/request/new_data2/' + times + '/'+locinfo[domn][0], dataType : 'json',返回的json字符串是一个被序列化的数组,数组中存放的是字典,其中要关注的是dict['t']以及dict['i'],dict['t']存放了图片的说明,dict['i']存放了图片的url.知道了这些后就可以开始python脚本了
import相关模块
(已经修复不能获取指定类型的bug,请求的url中最后一个数字代表类型)
获取json:index是下载的第几页,type是tws(太猥琐) tr(太热) tgx(太搞笑) tml(太萌了) tht(太好听 tyy(太养眼) 之一
然后是创建html文件
def create_html(alllist,name): html_head='<html><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>duilu</title><body>' html_end="</body></html>" f=open("%s.html"%(name),"w") f.write(html_head) for x in range(len(alllist)): f.write('<div><img src="%s/%s.gif"/>'%(name,str(x))) f.write('<p>%s</p></div>'%(alllist[x]['t'].encode('utf-8'))) f.write(html_end) f.close()下载图片
def download(list,dirname,index=0): os.chdir(dirname) for dict in list: imgurl=dict['i'] text= dict['t'] print index print imgurl print text res=url.urlopen(imgurl) img_type=".gif" content_type=res.headers["content-type"] if content_type=="image/jpeg": type=".jgp" filepath="%s"%(str(index)+img_type) f=open(filepath,"wb") f.write(res.read()) f.close() res.close() index+=1 os.chdir("../")主函数,用于调用上面那几个函数
def start(type,lenght): lenght=int(lenght) now=datetime.now() now=now.strftime("%m-%d %H.%M.%S") os.mkdir(type+now) alllist=[] for x in range(0,lenght): list=get_json(x,type) alllist.extend(list) create_html(alllist,type+now) download(alllist,type+now) print "\r\n\r\n==============OK==============\r\n\r\n"一个循环体,获取用户输入
while(True): print "输入tws(太猥琐) tr(太热) tgx(太搞笑) tml(太萌了) tht(太好听 tyy(太养眼) 之一\r\nexit:退出" type=raw_input() all_type=["tgx","tws","tyy","tr","tml","tht"] if type in all_type: print "键入下载页数:" lenght=raw_input() start(type,lenght) elif type=="exit": break else: print "\r\n输入有误\r\n"ok完成了,脚本会在当前目录下生成一个以时间命名的html文件以及同名文件夹来存放图片。
测试了一下,下载100多张图片用了几分钟,所以呢我觉得不需要多线程来下载。
也可以稍稍修改下生成html的地方,变成分页显示,然后将网页拖进安卓手机里看也是不错的
用python就是那么简单!
以上这篇批量下载对路网图片并生成html的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了Python实现批量下载图片的方法。分享给大家供大家参考。具体实现方法如下:#!/usr/bin/envpython#-*-coding:utf-
python自动化批量生成前端的HTML可以大大减轻工作量下面演示两种生成HTML的方法方法一:使用webbrowser#coding:utf-8importw
本文实例讲述了Node.js实现批量下载图片简单操作。分享给大家供大家参考,具体如下:使用Node.js批量下载图片首先要获取到图片链接:constimg=["
一、概述批量下载图片是我们在日常开发中经常会遇到的一个需求,这不,最近工作中就需要批量下载图片到本地,先是通过Excel拼接生成了所有链接地址,然后想到的是通过
前言浏览器下载完页面中的所有内容:HTML、JavaScript、CSS、图片——之后会解析并生成两个内部数据结构:DOM树:表示页面结构渲染树:表示DOM节点