标签:文件 页数 爬取 响应 ppt 1ppt com 链接
import requests
from lxml import html
etree = html.etree
import re
import os
if not os.path.exists('D:\爬虫/中秋节'):
os.mkdir('D:\爬虫/中秋节')
网址 = 'http://www.1ppt.com/moban/zhongqiujie/'
UA伪装 = {'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36 SLBrowser/7.0.0.9231 SLBChan/8'}
响应数据 = requests.get(url=网址,headers=UA伪装)
响应数据.encoding='gbk'
解析 = etree.HTML(响应数据.text)
末页 = 解析.xpath('//a[text()="末页"]/@href')
if 末页 !=[]:
正则 = re.search("(\d+).html",末页[0])
页数 = 正则.group(1)
else:
页数 = 1
for 页数 in range(1,int(页数)+1):
if 页数 == 1:
网址 = 'http://www.1ppt.com/moban/zhongqiujie/'
else:
网址 = 'http://www.1ppt.com/moban/zhongqiujie/'+'ppt_zhongqiujie_'+str(页数)+'.html'
响应数据 = requests.get(url=网址,headers=UA伪装)
响应数据.encoding = 'gbk'
解析 = etree.HTML(响应数据.text)
文件链接 = 解析.xpath('//ul[@class="tplist"]//@href')
文件链接 = ['http://www.1ppt.com/'+文件链接 for 文件链接 in 文件链接]
文件名称 = 解析.xpath('//ul[@class="tplist"]//@alt')
dict1 = dict(zip(文件名称, 文件链接))
for 文件名称, 文件链接 in dict1.items():
响应数据 = requests.get(url=文件链接, headers=UA伪装).text
解析 = etree.HTML(响应数据)
下载地址 = 解析.xpath('//ul[@class="downurllist"]/li/a/@href')
下载地址 = ['http://www.1ppt.com/' + 下载地址 for 下载地址 in 下载地址]
if 下载地址!=[]:
文件数据 = requests.get(url=下载地址[0], headers=UA伪装).content
文件路径 = 'D:\爬虫/中秋节/' + 文件名称 + '.zip'
with open(文件路径, 'wb') as 变量名:
变量名.write(文件数据)
print(文件名称, '下载成功了!!!')
标签:文件,页数,爬取,响应,ppt,1ppt,com,链接 来源: https://www.cnblogs.com/QYepoch/p/15449266.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。