前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >《爬虫系列之爬取PPT》

《爬虫系列之爬取PPT》

作者头像
叶茂林
发布2023-07-30 13:40:59
2150
发布2023-07-30 13:40:59
举报
文章被收录于专栏:叶子的开发者社区

这次不多BB,直接上代码系列。

代码语言:javascript
复制
import bs4
import requests

headers = {
    "user-agent": 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36 Edg/109.0.1518.70'
}


def level3(URL):
    response = requests.get(URL)
    soup = bs4.BeautifulSoup(response.content, 'lxml')
    title = soup.select('dl>dt>h1>a')[0].get_text()

    zipURL = soup.select('.c1 a')[0]['href']
    zipResponse = requests.get(zipURL)
    file = open('C:\\Users\\Yezi\\Desktop\\Python\\Crawler\\PPT\\' + title + '.zip', 'wb')
    file.write(zipResponse.content)
    print(title + ' ^o^ 爬取成功 ^o^')


def level2(URL):
    response = requests.get(URL)
    soup = bs4.BeautifulSoup(response.content, 'lxml')
    level3('https://www.1ppt.com' + soup.select('.downurllist a')[0]['href'])


def level1(URL):
    response = requests.get(URL)
    soup = bs4.BeautifulSoup(response.content, 'lxml')
    ones = soup.select('.tplist h2>a')
    for one in ones:
        try:
            level2('https://www.1ppt.com' + one['href'])
        except:
            print('https://www.1ppt.com' + one['href'])

def pages():
    for page in range(10,186):
        URL='https://www.1ppt.com/xiazai/ppt_xiazai_{}.html'.format(page)
        level1(URL)
        print('^o^ 第{}页爬完 ^o^'.format(page))

pages()
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-01-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档