博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python爬取站长素材网页图片保存到ppt中
阅读量:6323 次
发布时间:2019-06-22

本文共 2362 字,大约阅读时间需要 7 分钟。

hot3.png

网站地址:http://sc.chinaz.com/tupian/index.html

直接上代码:

import requestsfrom bs4 import BeautifulSoupfrom pptx import Presentationfrom pptx.util import Inchesimport osheader = {    "Referer":"http://sc.chinaz.com/tupian/index_2.html",    "Upgrade-Insecure-Requests":1,    "User-Agent":"Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.62 Safari/537.36",     "Host":"sc.chinaz.com",    "If-None-Match":"b22f28e7941dd41:0",    "Accept":"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8",    "Connection":"keep-alive"}#创建pptprs = Presentation()#图片放置位置left, top, width, height = Inches(1), Inches(0.5), Inches(8), Inches(6)#查询最大页数response = requests.get("http://sc.chinaz.com/tupian/index.html")soup = BeautifulSoup(response.text,"lxml");b=soup.find_all("b")print("最大页数为%s" % b[-1].text)for i in range(2,int(b[-1].text)):    print("下载第%d页的图片" % i)    resposne = requests.get("http://sc.chinaz.com/tupian/index_%s.html" % str(i));    resposne.encoding="utf-8"    soup = BeautifulSoup(resposne.text,"lxml")    div = soup.find("div",id="container")    #获取所有a标签    a = div.find_all("img")    for j in a:        #获取名称        name = j["alt"]        #获取图片地址        img = j["src2"]        #href = j.find("img")["src2"]        #图片保存的名称        imgname = name+".jpg"        conteng = requests.get(img)        #图片二进制        er = conteng.content        with open("F:\\BaiduNetdiskDownload\\"+imgname,"wb") as file:            print("正在下载图片--%s" %imgname)            file.write(er)            file.flush()            #创建一个空白ppt            ppt = prs.slide_layouts[6]            #添加到ppt中            ppts = prs.slides.add_slide(ppt)            #空白ppt添加下载的图片            pic = ppts.shapes.add_picture("F:\\BaiduNetdiskDownload\\"+imgname, left, top, width, height)            #删除图片            try:                if os.path.exists("F:\\BaiduNetdiskDownload\\"+imgname):                    # 删除文件,可使用以下两种方法。                    os.remove("F:\\BaiduNetdiskDownload\\"+imgname)                    # os.unlink(my_file)            except:                pass    files= os.listdir("F:\\BaiduNetdiskDownload\\")    if files:        for k in files:            print("正在删除图片--%s" % k)            os.remove("F:\\BaiduNetdiskDownload\\"+k)    prs.save("ppt1.ppt")

个人娱乐

转载于:https://my.oschina.net/renzhimin/blog/1858338

你可能感兴趣的文章
【web charting】21个Javascript图表插件程序
查看>>
div没有设置高度时背景颜色不显示(浮动)
查看>>
NYOJ39水仙花数
查看>>
20165318 《Java程序设计》实验一(Java开发环境的熟悉)实验报告
查看>>
python爬虫-韩寒新浪博客博文
查看>>
redis 的配置 redis.conf
查看>>
大话设计模式读书笔记5——装饰模式
查看>>
OCP 12c最新考试原题及答案(071-6)
查看>>
场解决方案添加webpart(Create Webpart to page using code)
查看>>
canvas学习笔记1——canvas基础应用
查看>>
传小米秘密自研操作系统mios 将应用于小米4(
查看>>
Device /dev/sdb1 not found (or ignored by filtering)
查看>>
猴年大吉!
查看>>
linux install JDK
查看>>
Synchronized锁性能优化偏向锁轻量级锁升级 多线程中篇(五)
查看>>
nginx tcp负载均衡配置
查看>>
OpenGL+VS2010环境配置及遇到的问题
查看>>
JavaScript设计模式 观察者模式
查看>>
[数据结构】【c语言】链表的创建和遍历
查看>>
使用多态性实现线性表(插入、删除、测长等)
查看>>