课程详情
课程评价
spContent=互联网是功能集合,更是存储空间;海量数据孕育巨大价值,数据采集需求迫切。网络爬虫已经成为自动获取互联网数据的主要方式,数据就在那里,它是你的吗?请跟随我们,5周时间,掌握利用Python爬取网络数据并提取信息的"小"本领。还等什么?快写个爬虫探索世界吧!
—— 课程团队
课程概述

快讯:本课程是国家精品在线开放课程“Python网络爬虫与数据分析”的上半部分,当前为第6次开课,欢迎大家前来学习! 



    —— 为什么要学习网络爬虫?

     —— 因为数据都在网上,先要爬下来才能挖掘淘金 ...



“The website is the API.” (网页即接口)网络爬虫是获取数据的必备本领,不要犹豫!

   

  本课程面向具有Python编程基础的各类学习者,讲解利用Python语言爬取网络数据并提取关键信息的技术和方法,帮助学习者掌握定向网络数据爬取和网页解析的基本能力。

    本课程介绍Python计算生态中最优秀的网络数据爬取和解析技术,具体讲授构建网络爬虫功能的两条重要技术路线:requests-bs4-reScrapy,所讲述内容广泛应用于AmazonGooglePayPalTwitter等国际知名公司。课程内容是进入大数据处理数据挖掘、以数据为中心人工智能领域的必备实践基础。

    本课程教学内容包括


·         Python第三方库Requests,讲解通过HTTP/HTTPS协议自动从互联网获取数据并向其提交请求的方法;

·         Python第三方库Beautiful Soup,讲解从所爬取HTML页面中解析完整Web信息的方法;

·     Python标准库Re,讲解从所爬取HTML页面中提取关键信息的方法;

·     Python第三方库Scrapy,介绍通过网络爬虫框架构造专业网络爬虫的基本方法 

    本课程希望传递理解和运用计算生态的理念,重点培养学习者运用当代最优秀第三方专业资源,快速分析和解决问题的能力。"人生苦短,不要刀耕火种,嵩老师教你直面问题和需求,用最好的工具解决它!

  本课程是国家精品在线开放课程“Python网络爬虫与数据分析”课程的上半部分。“Python网络爬虫与数据分析”课程由“Python网络爬虫与信息提取”和“Python数据分析与展示”两门MOOC课程组成,完整地讲解了数据获取、清洗、统计、分析、可视化等数据处理周期的主要技术内容,培养计算思维、数据思维及采用程序设计方法解决计算问题的实战能力技术。  


课程大纲
预备知识

本课程需要学习者具备Python语言编程的基本知识和初步技能,建议Python零基础学习者先修嵩老师的 “Python语言程序设计 ”课程(至少完成前四周学习)。

证书要求

采取百分制,阶段测验占80分,期末测验占20分。成绩达到相应要求即可申请证书,60-79分可申请合格证书,80分以上可申请优秀证书,为了保证证书权威性,2019年9月起不再发放免费证书。测验不难,只要认真学习都能够取得好的成绩。

参考资料

Python集成开发环境(IDE)

[1] IDLE: Python解释器默认工具

[2] Visual Studio Codehttps://code.visualstudio.com/(本课程推荐)

[3] PyCharmhttps://www.jetbrains.com/pycharm/

[4] Anacondahttps://www.continuum.io/ (本课程不推荐)


参考教程

[1] Python网络爬虫专题参考教程: 课程内部资料。

[2] Python语言程序设计基础(3)》,嵩天、黄天羽、杨雅婷著,高等教育出版社,2024.9(讲授Python 3版本)


参考网站

[1] Python123学习主站https://python123.io

[2] Python Requestshttps://www.python-requests.org

[3] Python Beautiful Soup: https://www.crummy.com/software/BeautifulSoup

[4] Python Scrapy: https://scrapy.org/


常见问题



Q1:除了Python,这个课程需要其他编程语言基础吗?

A1

不需要,只要具备基本的Python编程能力,就可以学习本课程。

 

Q2Python 2.xPython 3.x,这个课程采用哪个版本?

A2

Python 3.6 及以上,这是Python语言的现在和未来,嵩老师所有Python课程都采用Python 3.x系列版本。

 

Q3:在线开放课程只能看到视频,有问题谁来解答?

A3

编程能力是一技之长,学习过程中遇到问题很正常,为了更好地为同学们服务,本课程将由老师和一名助教在线上答疑,同时,其他学习者也会帮助回答问题。

 

Q4:非计算机专业学生要不要学网络爬虫呢?老师有何建议。

A4

信息满天下的时代,不会点儿爬虫技术都不好意思和别人打招呼,果断选课吧,先听听看,万一学得会了呢。

 

Q5:这个课程需要使用配套教材或工具书吗?

A5

本课程将提供视频、文本资料和程序代码等作为学习资料,同学们可以选择使用或不使用教材或工具书。由于Python网络爬虫方面相关知识内容还在逐步演进,建议先使用课程提供的资料进行学习。

 

Q6:作为Python小白,刚刚接触这门语言,适合学习这个课程吗?

A6

根据以往开课经验,如果没有Python基础,即使掌握有其他编程语言,也不建议直接学习本课程,因为课程节奏较快,很可能会跟不上。建议先学习嵩老师的"Python语言程序设计"课程(https://www.icourse163.org/course/BIT-268001),至少学过前4周,就可以学习本课程了。




Q7:该课程讲解的内容能爬取JavaScript的数据吗?

A7

Requests库不支持对JavaScript数据的解析能力,这需要浏览器内核支持;Scrapy库是一个框架,也不直接支持对JavaScript数据的解析能力。本课程现行教学大纲是v2.1版本,所讲述内容不支持JavaScript内容解析,Request库和Scrapy是网络爬虫领域必学必会的内容。