Python程序设计基础与应用版教学课件第1213章.pptx
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《Python程序设计基础与应用版教学课件第1213章.pptx》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Python 程序设计 基础 应用 教学 课件 1213
- 资源描述:
-
1、第12章 tkinter编程案例112.1 tkinter简介Python标准库tkinter是对Tcl/Tk的进一步封装,与tkinter.ttk和tkinter.tix共同提供了强大的跨平台GUI编程的功能。作为扩展,tkinter.ttk提供了Combobox、Progressbar和Treeview等组件,tkinter.scrolledtext提供了带滚动条的文本框,messagebox、commondialog、dialog、colorchooser、simpledialog、filedialog等模块提供了各种对话框。tkinter常用组件组件名称组件名称说明说明Button按钮
2、Canvas画布,用于绘制直线、椭圆、多边形等各种图形Checkbutton复选框形式的按钮Entry单行文本框Frame框架,可作为其他组件的容器,常用来对组件进行分组Label标签,常用来显示单行文本Listbox列表框Menu菜单Message多行文本框Radiobutton单选钮,同一组中的单选钮任何时刻只能有一个处于选中状态Scrollbar滚动条Toplevel常用来创建新的窗口12.1 tkinter简介 tkinter开发基本步骤:编写通用代码,例如数据库操作 搭建界面,放置组件,设置组件属性,可以借助于PAGE 编写组件的事件处理代码 启动应用程序,启动消息主循环12.1 t
3、kinter简介12.2 用户登录界面例例12-1 tkinter实现用户登录界面。code例12_1.pyw12.3 选择类组件应用例例12-2 tkinter单选钮、复选框、组合框、列表框综合运用案例。code例12_2.pyw12.4 简单画图程序例例12-3 使用tkinter实现画图程序。code例12_3.pyw12.5 电子时钟例例12-4 使用tkinter实现电子时钟。code例12_4.pyw12.6 屏幕颜色选择器 例例12-5 获取并显示屏幕任意位置的颜色。code例12_5.pyw 例例12-6 使用tkinter实现抽奖式提问程序。code例12_6.pyw12.7
4、 抽奖式提问程序12.8 简易计算器程序 例例12-7 使用tkinter实现计算器程序。code例12_7.pyw1112.9 定时自动关闭的窗口 例例12-8 使用tkinter实现定时自动关闭的窗口。code例12_8.pyw12第13章 网络爬虫入门与应用1313.1 HTML与JavaScript基础 如果只是编写爬虫程序的话,毕竟不是开发网站,所以只要能够看懂HTML代码基本上就可以了,不要求能编写。当然,对于一些高级爬虫和特殊的网站,还需要具有深厚的JavaScript功底,或者JQuery、AJAX等知识。1413.1.1 HTML基础(1)h标签在HTML代码中,使用h1到h
5、6表示不同级别的标题,其中h1级别的标题字体最大,h6级别的标题字体最小。该标签的用法为:一级标题二级标题三级标题1513.1.1 HTML基础(2)p标签在HTML代码中,p标签表示段落,用法为:这是一个段落1613.1.1 HTML基础(3)a标签在HTML代码中,a标签表示超链接,使用时需要指定链接地址(由href属性来指定)和在页面上显示的文本,用法为:点这里1713.1.1 HTML基础(4)img标签在HTML代码中,img标签用来显示一个图像,并使用src属性指定图像文件地址,可以使用本地文件,也可以指定网络上的图片。例如:1813.1.1 HTML基础(5)table、tr、t
6、d标签在HTML代码中,table标签用来创建表格,tr用来创建行,td用来创建单元格,用法为:第一行第一列 第一行第二列 第二行第一列 第二行第二列 1913.1.1 HTML基础(6)ul、ol、li在HTML代码中,ul标签用来创建无序列表,ol标签用来创建有序列表,li标签用来创建其中的列表项。例如,下面是ul和li标签的用法:红色 绿色 蓝色2013.1.1 HTML基础(7)div标签在HTML代码中,div标签用来创建一个块,其中可以包含其他标签,例如:红色 绿色 蓝色 第一段 第二段2113.1.2 JavaScript基础(1)在网页中使用JavaScript代码的方式 可以
7、在HTML标签的事件属性中直接添加JavaScript代码。例如,把下面的代码保存为index.html文件并使用浏览器打开,单击按钮“保存”,网页会弹出提示“保存成功”。2213.1.2 JavaScript基础 对于较多但仅在个别网页中用到的JavaScript代码,可以写在网页中的标签中。例如,下面的代码保存为index.html并使用浏览器打开,会发现页面上显示的是“动态内容”而不是“静态内容”。静态内容 document.getElementById(test).innerHTML=动态内容;2313.1.2 JavaScript基础 如果一个网站中会用到大量的JavaScript代
8、码,一般会把这些代码按功能划分到不同函数中,并把这些函数封装到一个扩展名为js的文件中,然后在网页中使用。例如,和网页在同一个文件夹中的myfunctions.js内容如下:function modify()document.getElementById(test).innerHTML=动态内容;在下面的页面文件中,把外部文件myfunctions.js导入,然后调用了其中的函数:静态内容 modify();2413.1.2 JavaScript基础(2)常用JavaScript事件 把下面的代码保存为index.html并使用浏览器打开,会发现在每次页面加载时都会弹出提示,但在页面上进行其他
9、操作时,并不会弹出提示。静态内容 2513.1.2 JavaScript基础 除了常用的事件之外,还有一些特殊的方式可以执行JavaScript代码。例如,下面的代码演示了在链接标签中使用href属性指定JavaScript代码的用法。function test()alert(提示信息);点这里 2613.1.2 JavaScript基础(3)常用JavaScript对象 下面的代码演示了prompt()方法的用法,将其保存为文件index.html并使用浏览器打开,会提示用户输入任意内容,然后在页面上输出相应的信息。var city=prompt(请输入一个城市名称:,烟台);documen
10、t.write(你输入的是:+city);2713.1.2 JavaScript基础 把下面的代码保存为文件index.html,此时页面上会显示图像文件1.jpg的内容,单击该图像时会切换成为2.jpg的内容。2813.2 urllib基本应用与爬虫案例 Python 3.x标准库urllib提供了urllib.request、urllib.response、urllib.parse和urllib.error四个模块,很好地支持了网页内容读取功能。再结合Python字符串方法和正则表达式,可以完成一些简单的网页内容爬取工作,也是理解和使用其他爬虫库的基础。2913.2.1 urllib的基本
11、应用1.读取并显示网页内容 import urllib.request fp=urllib.request.urlopen(rhttp:/www.python.org)print(fp.read(100)#读取100个字节 print(fp.read(100).decode()#使用UTF8进行解码 fp.close()#关闭连接3013.2.1 urllib的基本应用2.提交网页参数(1)下面的代码演示了如何使用GET方法读取并显示指定url的内容。import urllib.request import urllib.parse params=urllib.parse.urlencode(
12、spam:1,eggs:2,bacon:0)url=http:/www.musi- with urllib.request.urlopen(url)as f:print(f.read().decode(utf-8)3113.2.1 urllib的基本应用(2)下面的代码演示了如何使用POST方法提交参数并读取指定页面内容。import urllib.request import urllib.parse data=urllib.parse.urlencode(spam:1,eggs:2,bacon:0)data=data.encode(ascii)with urllib.request.url
13、open(http:/requestb.in/xrbl82xr,data)as f:print(f.read().decode(utf-8)3213.2.1 urllib的基本应用3.使用HTTP代理访问页面 import urllib.request proxies=http:http:/:8080/opener=urllib.request.FancyURLopener(proxies)with opener.open(http:/www.python.org)as f:f.read().decode(utf-8)3313.2.2 urllib爬虫案例 例例13-1 爬取公众号文章中的图片
14、。第1步 确定公众号文章的地址,以微信公众号“Python小屋”里的一篇文章为例,文章标题为“报告PPT(163页):基于Python语言的课程群建设探讨与实践”,地址为:https:/ urllib爬虫案例第2步 在浏览器(以Chrome为例)中打开该文章,然后单击鼠标右键,选择“查看网页源代码”,分析后发现,公众号文章中的图片链接格式为:3513.2.2 urllib爬虫案例第3步 根据前面的分析,确定用来提取文章中图片链接的正则表达式:pattern=data-type=png data-src=(.+?)3613.2.2 urllib爬虫案例 第4步 编写并运行Python爬虫程序,代
15、码如下:from re import findallfrom urllib.request import urlopenurl=https:/ urlopen(url)as fp:content=fp.read().decode()pattern=data-type=png data-src=(.+?)#查找所有图片链接地址result=findall(pattern,content)#逐个读取图片数据,并写入本地文件for index,item in enumerate(result):with urlopen(str(item)as fp:with open(str(index)+.png
16、,wb)as fp1:fp1.write(fp.read()3713.3 scrapy爬虫案例 例例13-2 使用scrapy框架编写爬虫程序。第1步 使用pip命令安装好scrapy之后,在命令提示符环境中执行下面的命令创建一个项目MyCraw:scrapy startproject MyCraw3813.3 scrapy爬虫案例第2步 然后编写Python程序MyCrawMyCrawspidersMySpider.py,用于爬取指定页面的内容,把网页内容和图片分别保存为文件,MySpider.py的代码如下:codeMySpider.py3913.3 scrapy爬虫案例第3步 在命令提示
展开阅读全文