70行Python代码,获取中国数据库大会(DTCC)全部PPT
Posted 明月十四桥
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了70行Python代码,获取中国数据库大会(DTCC)全部PPT相关的知识,希望对你有一定的参考价值。
大家好,我是明月十四桥!
擅长领域:python黑科技、大数据后端研发、数据仓库
今日重点:
① 学会使用python 获取各种网站的ppt,可见即可爬;
② 中国数据库大会一年一届,门票昂贵,干货满满,文末资料包值得深入学习。
呕心沥血,白天工作,晚上写文,建议收藏+实操!!!有问题欢迎评论,或加微信咨询
【中国数据库大会】
中国数据库大会秉承一贯的干货分享和实践指导原则,历经十年的积累与沉淀,如今的DTCC已然成为国内数据库领域的技术风向标,见证了整个行业的发展与演变。
2020年12月21日~12月23日,由 IT168 旗下 ITPUB 企业社区平台主办的第十一届中国数据库技术大会(DTCC2020),将在北京隆重召开。大会以“架构革新 高效可控”为主题,设置2大主会场,20+技术专场,将邀请超百位行业专家,重点围绕数据架构、AI与大数据、传统企业数据库实践和国产开源数据库等内容展开分享和探讨,为广大数据领域从业人士提供一场年度盛会和交流平台。
【小编动机】
官方只提供了预览的方式,无法完美的欣赏这么干货满满、制作精良的ppt。
对于求知欲强烈的桥哥来说简直太难受了,于是便写了个程序,一键获取所有ppt,并送给可爱的粉丝们。
中国数据库大会链接:http://dtcc.it168.com/
涉及技术:数据架构、大数据、数据库、云、数据治理
【下载代码】
软件环境:python 3
# encoding: utf-8
from bs4 import BeautifulSoup
import requests
from urllib.request import urlopen
import re
import json
def visit(url):
headers = {
"User-Agent": "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; InfoPath.3)",
"accept": "application/json, text/javascript, */*; q=0.01",
"accept-encoding": "gzip, deflate, br",
"accept-language": "zh-CN,zh;q=0.9",
"content-type": "application/x-www-form-urlencoded; charset=UTF-8",
"cookie": "", -- 填自己的
"referer": "",
"sec-fetch-dest": "document",
"sec-fetch-mode": "navigate",
"sec-fetch-site": "same-origin",
}
res = requests.get(url,headers=headers)
bsObj = BeautifulSoup(res.text, "html.parser")
return bsObj
def visit_homepage(url):
bsObj = visit(url)
content = bsObj.find('div', class_="content")
content_list = content.select("p")
category = []
for i in range(4,len(content_list)):
try:
urls = content_list[i].a['href']
name = content_list[i].get_text("|").split("|")[0].replace(' ','').replace('\\xa0','')
category.append([name,urls])
except:
pass
print(category)
return category
def download_pdf(conf,path):
category_name = conf[0]
category_url = conf[1]
bsObj = visit(category_url)
res = re.search(r'(.*)token:(.*?),',str(bsObj) ,re.M|re.I)
token = res.group(2).replace('"','').replace(' ','')
arts = re.findall(r'(.*)li data-docinfo=(.*?)}',str(bsObj) ,re.M|re.I)
for art in arts:
art_str = "{"+str(art).split('{')[1].replace("')","}")
art_dic = json.loads(art_str)
id = art_dic['id']
name = art_dic['name']
download_url = "https://api.z.itpub.net/download/file?st-usertoken=%s&id=%s"%(token,str(id))
print(download_url)
data = urlopen(download_url).read()
with open(path+category_name+'__'+name, 'wb') as f:
f.write(data)
print("finish download ")
if __name__ == '__main__':
homepage = "https://z.itpub.net/article/detail/5260C494873379BAA63BAB7C5CBD7A95"
path = "/Users/xxx/Downloads/DTCC/"
# download
category = visit_homepage(homepage)
for i in category:
download_pdf(i,path)
【效果展示】
【下载方法】
桥哥为大家提供了两种获取ppt的方式:
1、python爬虫获取
需进行这两步操作:
(1)cookie换成自己的
获取cookie办法:打开开发者模式(windows F12,mac opt+command+i) 打开开发者模式,访问:homepage,network里面有cookie。
(2)修改path为自己的目录
ps.注意不要频繁访问该网站,给对方网站造成压力!!
2、网盘下载
桥哥也把ppt放在了csdn网盘,下载链接:
链接: https://download.csdn.net/download/weixin_39032019/19147554
我是桥哥,专注分享大数据知识体系 & Python黑科技。
求点赞、求评论、求收藏!!
CSDN官方学习推荐 ↓ ↓ ↓
为了帮助更多小白从零进阶,从CSDN官方那边搞来了一套 《Python 工程师学习成长知识图谱》,尺寸 870mm x 560mm
,展开后有一张办公桌大小,也可以折叠成一本书的尺寸,有兴趣的小伙伴可以了解一下,当然,不管怎样博主的文章一直都是免费的~
【推荐阅读】
数据仓库专栏:数仓方法论、实战经验、面试真题 >> https://blog.csdn.net/weixin_39032019/category_8871528.html
Python专栏:Python黑科技:爬虫、算法、小工具 >> https://blog.csdn.net/weixin_39032019/category_8974792.html
大数据集锦专栏:面试真题、开发经验、调优策略 >> https://blog.csdn.net/weixin_39032019/category_11048805.html
以上是关于70行Python代码,获取中国数据库大会(DTCC)全部PPT的主要内容,如果未能解决你的问题,请参考以下文章
活动 | GreatSQL社区亮相2023 DTC 分享开源技术成果实践
华为云GaussDB新产品特性亮相DTC2021,新品开源预告
DTC服务启动提示:“Windows不能在本地计算机启动Distributed Transaction Coordinator。有关更多