北京理工大学慕课下载:Python网络爬虫与信息提取(国家级精品课)
类型:公开课
主讲人:嵩天, 博士, 长聘教授、博士生导师, 北京理工大学网络空间安全学院副院长, 北京市青年教学名师, 北京理工大学教学名师, 美国圣路易斯华盛顿大学(Washington University in St.Louis)公派访问学者. 2002年8月, 毕业于东北大学计算机系, 获学士学位, 校98尖子班成员, 同年保送至清华大学. 2008年1月, 毕业于清华大学计算机系, 获工学博士学位. 同年, 进入北京理工大学计算机学院工作. 2008至2009年, 作为科技部/教育部/广东省科技特派员, 担任深圳市广道高新技术有限公司副总经理(技术第一责任人). 2021年2月, 调入北京理工大学网络空间安全学院, “网络空间安全”与”计算机科学与技术”双学科博士生导师. ACM/IEEE会员, 中国计算机学会高级会员.
主要从事计算机网络、网络信息安全、智慧学习空间等方向研究. 主持国家自然科学基金重点、面上等项目6项, 参与国家重点研发计划项目3项, 主持各类科研项目30余项, 发表学术论文70余篇. 主持教育部产学合作协同育人项目8项, 各类教育教改项目20余项, 发表教学研究论文20余篇. 我国最早一批在线开放课程的建设者、组织者和实践者, 主持建设2门国家级一流本科课程(线上), 主持建设6门慕课, 2门入选学习强国, 累计在线学习者超过400万人. 在国内发起、建设、推动Python语言程序设计课程改革. 获高等教育国家级教学成果一等奖1项、北京市教育教学成果一等奖2项.
学术兼职:
科研兼职
中国计算机学会(CCF), 高级会员 (2013-).
中国计算机学会”体系结构”专委会(CCF TC-ARCH), 常务委员 (2018-).
中国人工智能学会”人工智能与安全”专委会, 委员 (2019-).
美国计算机学会(ACM), 会员 No.7264065 (2013-), ACM SIGCOMM (2018-), ACM SIGCSE (2018-).
国际电气和电子工程师协会(IEEE), 会员 (2005-).
副主编: 计算机工程与应用 (2018-)
审稿人: ACM/IEEE ToN, IEEE TC, IEEE INFOCOM, IEEE CAL…
OC/TPC: ACM ICN 2014, ACM/IEEE ANCS 2017, ACM ICN 2019…
教学兼职
全国高等学校计算机教育研究会, 青年教师工作委员会, 主任 (2016-).
全国高等学校计算机教育研究会, 常务理事 (2020-).
全国高等院校计算机基础教育研究会, 青年教师工作委员会, 主任 (2017-).
全国高等院校计算机基础教育研究会, 理工专业委员会, 秘书长 (2015-).
全国高校计算机教育MOOC联盟, Python语言工作组, 负责人 (2015-).
中国计算机学会”教育”专委会(CCF TC-EDU), 委员 (2013-).
北京市高等教育学会计算机教育研究会, 副理事长 (2019-).
ACM SIGCSE China, 委员 (2016-).
北京理工大学课程思政教学研究中心, 专家 (2020-2023).
北京理工大学教师发展中心, 专家 (2021-2023).
科学研究:
研究兴趣
计算机科学技术在性能与功能两方面交织发展. 主要开展新一代网络体系结构、网络安全与管理、智慧学习空间等三个方向研究. 三个方向均有国家自然科学基金项目支持.
(1) 新一代网络体系结构
命名数据网(Named Date Networking)体系结构, 非IP协议组网.
信息中心网络(Information Centric Networking)体系结构, 计算/存储/网络一体化.
路由/交换架构与内核协议栈, 高动态组网.
工业互联网, 空天一体化网络, 空天信息网络.
(2) 网络安全与管理
网络入侵检测/防御技术, 检测算法.
网络隐蔽通信技术与系统, 逆踪隐藏方法.
高速网络包转发、匹配和分类算法.
万兆(>10Gbps)高通量网络数据捕获与实时分析.
(3) 智慧学习空间
教育大数据分析与效果评估, 教学分析.
智能化教学工具与平台设计, 教学支撑.
社交化、交互式学习空间设计, 学习支撑.
在线开放课程质量分析, 教育评价.
注: 在研项目均围绕以上研究内容.
科研项目
2008年至今, 主持40余项各类科技项目,近五年新增科研经费700余万元, 重要项目列表如下:
纵向课题 (除特殊说明, 均为项目主持):
[15] 国家自然科学基金(重点支持项目)”未来工业互联网基础理论与关键技术”重大研究计划, “以信息为中心的按需联接工业互联网体系架构与验证” (92067203), 2021.1 – 2023.12.
[14] 国家自然科学基金(面上项目), “面向在线开放课程的多元粘性学习空间构建技术研究” (62077004), 2021.1 – 2024.12.
[13] 国家重点研发计划项目, “星间太赫兹组网通信关键技术研究” (安建平教授, 2830万), 项目骨干, 2020.1 – 2023.12.
[12] 国家重点研发计划项目, “北京冬奥会综合交通出行’一张票’关键技术” (张军院士, 1910万元), 北理工负责人, 2020.1 – 2022.12.
[11] 国家重点研发计划项目, “网络安全”课题*, 北理工负责人, 2017.1 – 2020.12.
[10] 国家自然科学基金(面上项目), “信息中心网络中高性能命名包转发方法和体系结构研究” (61672101), 2017.1 – 2020.12.
[09] 国家自然科学基金(联合基金项目), “移动网络中应用层协议识别对抗原理和隐藏通信方法研究” (U1636119), 2017.1 – 2019.12.
[08] 江苏省科技厅/江苏省未来网络创新研究院, “命名数据网中高速包转发方法研究与验证” (BY2013095-1-09), 2014.1 – 2015.12.
[07] 北京理工大学国际科技合作专项计划项目, 2013.1 – 2014.12.
[06] 国家自然科学基金(面上项目), “高性能网络应用层协议识别方法和体系结构研究” (61272510), 2013.1 – 2016.12.
[05] 工业信息化部科工局项目, “空天地通信网络”课题*, 2011.3 – 2011.12.
[04] 智能信息技术北京市重点实验室资助项目, 2011.1 – 2013.12.
[03] 网络与交换技术国家重点实验室资助项目, 2010.4 – 2012.12.
[02] 北京理工大学优秀青年教师资助项目, 2009.1 – 2010.12.
[01] 国家自然科学基金(青年项目), “网络安全应用中高性能特征匹配体系结构研究” (60803002), 2009.1 – 2011.12.
横向课题 (主持):
[18] 中国船舶工业集团研发项目, “船舶导航网络与信息化”课题7*, 2020.5 – 2021.12.
[17] 北京卫星信息工程研究所, “数字软件”课题*, 2017.4 – 2018.12.
[16] 中国TY技术研究院, “数据通信传输”课题3*, 2017.7 – 2019.7.
[15] 中国TY技术研究院, “移动应用安全”课题2*, 2017.1 – 2018.12.
[14] 中国TY技术研究院, “移动应用安全”课题1*, 2017.1 – 2018.12.
[13] 中国船舶工业集团研发项目, “船舶导航网络与信息化”课题6*, 2017.7 – 2017.12.
[12] 中国船舶工业集团研发项目, “船舶导航网络与信息化”课题5*, 2016.7 – 2017.12.
[11] 航天恒星科技有限公司, “骨干网交换机地检设备研制”, 2015.6 – 2016.10.
[10] 中国空间技术研究院CAST创新基金, “通信卫星”课题*, 2014.8 – 2015.8.
[09] 中国船舶工业集团研发项目, “船舶导航网络与信息化”课题4*, 2013.7 – 2014.12.
[08] 盘古文化传播有限公司(盘古搜索), “搜索引擎中的链接分析”, 2011.12 – 2013.6.
[07] 中国船舶工业集团研发项目, “船舶导航网络与信息化”课题3*, 2011.1 – 2013.12.
[06] 中国船舶工业集团研发项目, “船舶导航网络与信息化”课题2*, 2011.1 – 2012.12.
[05] 西门子(中国)研究院, “面向机器指令的中间语言翻译优化技术研究”, 2011.1 – 2011.12.
[04] 中国船舶工业集团研发项目, “船舶导航网络与信息化”课题1*, 2010.1 – 2012.12.
[03] 西门子(中国)研究院, “面向机器指令的中间语言翻译技术研究”, 2010.1 – 2010.12.
[02] 美国德致伦(Digilent)电子有限公司合作项目, “NetFPGA实验平台”, 2010.10 – 2011.12.
[01] 深圳市广道高新技术有限公司, “网络舆情分析和管理系统”, 2008.10 – 2009.12.
教材与教学专著:
[3] 《人工智能程序设计》, (嵩天) 工信部十四五规划教材, 高等教育出版社.
[2] 《Python语言程序设计基础(第2版)》 (嵩天, 礼欣, 黄天羽), 北京市优秀教材建设奖, 高等教育出版社.
[1] 《程序设计基础(Python语言)》 (嵩天, 黄天羽, 礼欣), 兵工优秀教材, 高等教育出版社.
黄天羽,北京理工大学计算机学院教授,北京市高等学校青年教学名师,博导,美国宾夕法尼亚大学公派访问学者,2007 年 4 月获得北京理工大学计算机应用专业博士学位,留校任教北京理工大学。主讲课程为《Python语言程序设计》、《软件工程基础训练》、《动画原理与实现》、《虚拟现实技术与应用》、《数字表演基础与应用》、《人群建模与仿真》,主持建设2门国家级一流课程,获北京市教育教学成果奖2项,指导学生获得全国“互联网+”比赛金奖、“挑战杯”比赛银奖。研究方向包括虚拟现实、计算机仿真、数字表演等。
学院介绍: 北京理工大学,简称“北理工”,是隶属于中华人民共和国工业和信息化部、副部级建制的全国重点大学,中管高校,位列国家“双一流”、“211工程”、“985工程”重点建设高校,入选高等学校学科创新引智计划、高等学校创新能力提升计划、卓越工程师教育培养计划、国家建设高水平大学公派研究生项目、国家大学生创新性实验计划、国家级大学生创新创业训练计划、新工科研究与实践项目、中国政府奖学金来华留学生接收院校、高等学校科技成果转化和技术转移基地,是工业和信息化部高校联盟、全国高等军工院校课程思政联盟、中国人工智能教育联席会、卓越联盟高校、延河高校人才培养联盟成员。
北京理工大学前身是1940年成立于延安的自然科学院,历经晋察冀边区工业专门学校、华北大学工学院等办学时期,1949年定址北京并接收中法大学校本部和数理化三个系,1952年定名为北京工业学院,1988年更名为北京理工大学。
课程介绍: 互联网是功能集合,更是存储空间;海量数据孕育巨大价值,数据采集需求迫切。网络爬虫已经成为自动获取互联网数据的主要方式,数据就在那里,它是你的吗?请跟随我们,5周时间,掌握利用Python爬取网络数据并提取信息的”小”本领。还等什么?快写个爬虫探索世界吧!
—— 为什么要学习网络爬虫?
—— 因为数据都在网上,先要爬下来才能挖掘淘金 …
“The website is the API.” (网页即接口)网络爬虫是获取数据的必备本领,不要犹豫!
本课程面向具有Python编程基础的各类学习者,讲解利用Python语言爬取网络数据并提取关键信息的技术和方法,帮助学习者掌握定向网络数据爬取和网页解析的基本能力。
本课程介绍Python计算生态中最优秀的网络数据爬取和解析技术,具体讲授构建网络爬虫功能的两条重要技术路线:requests-bs4-re和Scrapy,所讲述内容广泛应用于Amazon、Google、PayPal、Twitter等国际知名公司。课程内容是进入大数据处理、数据挖掘、以数据为中心人工智能领域的必备实践基础。
本课程教学内容包括:
Python第三方库Requests,讲解通过HTTP/HTTPS协议自动从互联网获取数据并向其提交请求的方法;
Python第三方库Beautiful Soup,讲解从所爬取HTML页面中解析完整Web信息的方法;
Python标准库Re,讲解从所爬取HTML页面中提取关键信息的方法;
Python第三方库Scrapy,介绍通过网络爬虫框架构造专业网络爬虫的基本方法。
本课程希望传递“理解和运用计算生态”的理念,重点培养学习者运用当代最优秀第三方专业资源,快速分析和解决问题的能力。”人生苦短,不要刀耕火种“,嵩老师教你直面问题和需求,用最好的工具解决它!
本课程是国家精品在线开放课程“Python网络爬虫与数据分析”课程的上半部分。“Python网络爬虫与数据分析”课程由“Python网络爬虫与信息提取”和“Python数据分析与展示”两门MOOC课程组成,完整地讲解了数据获取、清洗、统计、分析、可视化等数据处理周期的主要技术内容,培养计算思维、数据思维及采用程序设计方法解决计算问题的实战能力技术。
本课程需要学习者具备Python语言编程的基本知识和初步技能,建议Python零基础学习者先修嵩老师的“Python语言程序设计”课程(至少完成前四周学习)。
参考教程:
[1] Python网络爬虫专题参考教程: 课程内部资料。
[2] 《Python语言程序设计基础(第2版)》,嵩天、礼欣、黄天羽著,高等教育出版社,2017.2(讲授Python 3版本)
课程大纲:
【第〇周】网络爬虫之前奏
“网络爬虫”课程内容导学
Python语言开发工具选择
【第一周】网络爬虫之规则
本周课程导学
单元1:Requests库入门
单元2:网络爬虫的“盗亦有道”
单元3:Requests库网络爬虫实战(5个实例)
【第二周】网络爬虫之提取
本周课程导学
单元4:Beautiful Soup库入门
单元5:信息组织与提取方法
单元6:实例1:中国大学排名爬虫
【第三周】网络爬虫之实战
本周课程导学
单元7:Re(正则表达式)库入门
单元8:实例2:淘宝商品比价定向爬虫
单元9:实例3:股票数据定向爬虫
【第四周】网络爬虫之框架
本周课程导学
单元10:Scrapy爬虫框架
单元11:Scrapy爬虫基本使用
单元12:实例4:股票数据Scrapy爬虫
课程列表:
【第1集】北京理工大学公开课:全课程内容导学 译
【第2集】北京理工大学公开课:Python语言开发工具选择 译
【第3集】北京理工大学公开课:第一周内容导学 译
【第4集】北京理工大学公开课:Requests库的安装 译
【第5集】北京理工大学公开课:Requests库的get()方法 译
【第6集】北京理工大学公开课:爬取网页的通用代码框架 译
【第7集】北京理工大学公开课:HTTP协议及Requests库方法 译
【第8集】北京理工大学公开课:Requests库主要方法解析 译
【第9集】北京理工大学公开课:单元小结 译
【第10集】北京理工大学公开课:网络爬虫引发的问题 译
【第11集】北京理工大学公开课:Robots协议 译
【第12集】北京理工大学公开课:Robots协议的遵守方式 译
【第13集】北京理工大学公开课:单元小结 译
【第14集】北京理工大学公开课:实例1:京东商品页面的爬取 译
【第15集】北京理工大学公开课:实例2:亚马逊商品页面的爬取 译
【第16集】北京理工大学公开课:实例3:百度360搜索关键词提交 译
【第17集】北京理工大学公开课:实例4:网络图片的爬取和存储 译
【第18集】北京理工大学公开课:实例5:IP地址归属地的自动查询 译
【第19集】北京理工大学公开课:单元小结 译
【第20集】北京理工大学公开课:第二周内容导学 译
【第21集】北京理工大学公开课:Beautiful Soup库的安装 译
【第22集】北京理工大学公开课:Beautiful Soup库的基本元素 译
【第23集】北京理工大学公开课:基于bs4库的HTML内容遍历方法 译
【第24集】北京理工大学公开课:基于bs4库的HTML格式化和编码 译
【第25集】北京理工大学公开课:单元小结 译
【第26集】北京理工大学公开课:信息标记的三种形式 译
【第27集】北京理工大学公开课:三种信息标记形式的比较 译
【第28集】北京理工大学公开课:信息提取的一般方法 译
【第29集】北京理工大学公开课:基于bs4库的HTML内容查找方法 译
【第30集】北京理工大学公开课:单元小结 译
【第31集】北京理工大学公开课:“中国大学排名定向爬虫”实例介绍 译
【第32集】北京理工大学公开课:“中国大学排名定向爬虫”实例编写 译
【第33集】北京理工大学公开课:“中国大学排名定向爬虫”实例优化 译
【第34集】北京理工大学公开课:单元小结 译
【第35集】北京理工大学公开课:第三周内容导学 译
【第36集】北京理工大学公开课:正则表达式的概念 译
【第37集】北京理工大学公开课:正则表达式的语法 译
【第38集】北京理工大学公开课:Re库的基本使用 译
【第39集】北京理工大学公开课:Re库的match对象 译
【第40集】北京理工大学公开课:Re库的贪婪匹配和最小匹配 译
【第41集】北京理工大学公开课:单元小结 译
【第42集】北京理工大学公开课:“淘宝商品信息定向爬虫”实例介绍 译
【第43集】北京理工大学公开课:“淘宝商品信息定向爬虫”实例编写 译
【第44集】北京理工大学公开课:单元小结 译
【第45集】北京理工大学公开课:“股票数据定向爬虫”实例介绍 译
【第46集】北京理工大学公开课:“股票数据定向爬虫”实例编写 译
【第47集】北京理工大学公开课:“股票数据定向爬虫”实例优化 译
【第48集】北京理工大学公开课:单元小结 译
【第49集】北京理工大学公开课:第四周内容导学 译
【第50集】北京理工大学公开课:Scrapy爬虫框架介绍 译
【第51集】北京理工大学公开课:Scrapy爬虫框架解析 译
【第52集】北京理工大学公开课:requests库和Scarpy爬虫的比较 译
【第53集】北京理工大学公开课:Scrapy爬虫的常用命令 译
【第54集】北京理工大学公开课:单元小结 译
【第55集】北京理工大学公开课:Scrapy爬虫的第一个实例 译
【第56集】北京理工大学公开课:yield关键字的使用 译
【第57集】北京理工大学公开课:Scrapy爬虫的基本使用 译
【第58集】北京理工大学公开课:单元小结 译
【第59集】北京理工大学公开课:“股票数据Scrapy爬虫”实例介绍 译
【第60集】北京理工大学公开课:“股票数据Scrapy爬虫”实例编写 译
【第61集】北京理工大学公开课:“股票数据定向Scrapy爬虫”实例优化 译
【第62集】北京理工大学公开课:单元小结 译