内容正文:
Python爬虫
课程名称
Python语言程序
教学内容
Python爬虫
课时
1
项目性质
□演示性 □验证性 □设计性 √综合性
授课班级
授课日期
授课地点
教学目标
搭建一个本地网页,利用python爬虫爬取本地网页上的文字内容
教学内容
1.借用Pycharm工具,建立Python3项目
2.搭建一个本地网页
3.利用python爬虫爬取本地网页上的文字内容
教学重点
教学难点
利用python爬虫爬取本地网页上的文字内容
教学准备
装有Python的计算机
教学课件PPT
2
学科网(北京)股份有限公司
教学过程
教学环节
教学内容与过程
(教学内容、教学方法、组织形式、教学手段)
课前组织
做好上课前的各项准备工作(打开计算机、打开课件、打开软件、打开授课计划、教案等),吸引学生注意力。
课程说明
【目的】
使学生从了解本节课的学习目标、学习重点、考评方式等方面明确课程学习的要求和目标。
课程内容描述
1 本地网站数据的准备与python实现简单爬虫功能
知识点
1)启动Tomcat发布本地网站
实验目的
1)本地网站数据的准备
实验环境
1)Oracle Linux 7.4
2)Jdk1.8.0_171
3)Pycharm
4)Python3.6.5
实验步骤
1)基于本地的网站数据的准备
1.启动Tomcat,查看发布的网站,。
[Command 001]:
catalina.sh start
[Command 002]:
ls /opt/tomcat/webapps/liarbry/html/
2.单击桌面左下角的人形图标
3.单击网页浏览器,如下图
4.打开的浏览器地址栏中输入网页地址,查看网页内容。
[Command 003]:
http://localhost:8080/liarbry/html/books-1.html
2 Python3实现简单爬虫功能
知识点
1)启动服务,发布网站。
2)Python的Urllib2模拟浏览器访问网页
3)Python将网页数据爬取到本地,做为实验数据使用。
实验目的
1)理解python的Urllib2模拟浏览器原理
实验环境
1)Oracle Linux 7.4
2)Jdk1.8.0_171
3)Pycharm
4)Python3.6.5
实验步骤
1)Pycharm建立Python3项目
1.鼠标双击桌面“pycharm”图标,打开pycharm工具,依次选择主菜单File->New Project…选项,在弹出的窗口中Location对应的文本框中输入项目名project,点击Create按钮,完成项目的创建。
2.如果是第1次打开此工具会弹出“Welcome to PyCharm Community Edition”窗口,鼠标点击“Do not show again”,下次再打开工具时就不会弹出此窗口。然后选择“Create New Project”,在弹出的窗口中Location对应的文本框中输入项目名project,点击Create按钮,完成项目的创建。
3.建立包名experiment,用于写清洗Python程序。具体做法:选中新建立的项目project->鼠标右键->New->Python Package。
4.在弹出的New Package窗口中的文本框内,输入要建立的包名(用户可自定义)“experiment”,点击OK按键,完成包名的创建。
5.此时在窗口左侧的窗口中的project项目下可以看到新建立experiment程序包,在该包下写实验相关的Python程序。
6.设置统一的编码模式,使新生成的文件支持中文,统一设置utf-8编码。具体做法:File->settings->Editor->File and Code Templates->Python Script。在Python Script对应的文本模式中输入具体编码设置,点击OK按钮,完成设置。
[Code 001]:
#!/usr/bin/python
# -*- coding:utf-8 -*-
2)编写Python3程序,实现爬取网页数据的功能
1.为了实现爬取http://localhost:8080/liarbry/html/books-1.html网页的数据,建立python文件Spider.py编写程序。具体做法:选中包名experiment->鼠标右键->选择New->选择Python File。
2.在弹出的窗口中,属性值Name对应的文本框中输入新建立的文件的名字“Spider”,点击OK按钮,完成文件的创建。
3.在新建立的Spider.py文件中编写代码。具体代码如下。
[Code 002]:
#!/usr/bin/python
# -*- coding:utf-8 -*-
# 加载模块
import requests
import bs4
# 定义待爬取网页连接
url = 'http://localhost:8080/liarbry/html/books-3.html'
# 获取网页源码
response = requests.get(url)
# 使用bs4解析网页
content = bs4.BeautifulSoup(response.content.decode("utf-8"), "lxml")
# 找到节点<a>的信息
element = content.find_all( name='a')
# 打开文本文件并写入信息
f1 = open('urls.txt', 'w')
f1.write(str(element).strip())
f1.close()
# 查找第三个节点<a>中的第0个内容
element = content.find_all('a')[3].contents[0]
print(element)
# 查找href为特定链接的节点
element = content.find_all( href='http://books.toscrape.com/catalogue/category/books/sports-and-games_17/index.html')
print(element)
# 查找属性id为default的节点
element = content.find_all( id='default')
f2 = open('body.txt', 'w')
f2.write(str(element).strip())
f2.close()
4.其中Spider.py文件编写程序后的样式如图所示。
5.代码中单击右键,选择Run Spider,运行程序。如下图所示.
6.运行结果如下图
7.其中urls.txt内容(内容过多,给出部分数据截图)。
8.其中body.txt内容(内容过多,给出部分数据截图)。
总结评价
本讲主要学习了:
1.借用Pycharm工具,建立Python3项目
2.搭建一个本地网页
3.利用python爬虫爬取本地网页上的文字内容
$$