第九章互联网研究方法的技术基础.教学xppt课件(完整版).pptx
-
资源ID:16893485
资源大小:475KB
全文页数:32页
- 资源格式: PPTX
下载积分:20金币
快捷下载
会员登录下载
微信登录下载
三方登录下载:
微信扫一扫登录
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
第九章互联网研究方法的技术基础.教学xppt课件(完整版).pptx
第九章 互联网研究方法的技术基础.教学xppt课件(完整版)新编21世纪新闻传播学系列教材 新闻学系列 新媒体研究方法第九章互联网研究方法的技术基础王锡苓、刘王锡苓、刘 昊昊 著著互联网研究方法的技术基础本章要点关键词第9章互联网技术飞速发展,既为人们获取信息提供了无远弗届的便利,也为研究人们在互联网上的“痕迹”提供了平台。多种多样的互联网应用平台,既是数据的集合地,由于其技术特征,也为研究其上的数据提供了技术工具。欲要利用互联网技术研究新媒体环境中的传播现象,必须首先弄明白互联网的技术基础,包括HTML语言、正则表达式、Xpath和Python语言基础。HTML、正则表达式、Xpath、Python第1节 超文本标记语言 1.1 HTML语言特点HTML是超文本标记语言(Hyper Text Markup Language,HTML),主要用于编写网页的标准标记语言。在互联网上,有许多用户使用的页面,都是运用超级文本标记语言编写的代码,这种代码使用浏览器解析出来,就成为各种各样的网页。HTML语言是一种标记语言,它通过各种符号来标记将要显示在网页中的各部分内容。u 超文本性u 标记语言u 平台无关性u 网络通用性第1节 超文本标记语言 1.2 HTML页面a simple example page 页面正文写在这里. . 第1节 超文本标记语言 1.3 HTML常用标签 1.3.1 HTML标签的写法任何标记皆由“”所包围。标记字母大小写皆可。标记名与之间不能留有空格。有些标记需要加上参数,某些则不必。标记一般成对出现,但也有单标记的存在。第1节 超文本标记语言 1.3 HTML常用标签 1.3.2 HTML常用标签u 标题标签u 标签和标签u 列表标签u 预排版文本标签 u 超链接标签u 字体控制标签u 字体风格标签u 图像标签u 表格标签u 标签与标签 第2节 正则表达式 2.1 使用正则表达式的意义传统的搜索和替换操作要求用户提供与预期的搜索结果匹配的确切文本。这种技术简单容易掌握,但存在灵活性不足等问题。使用正则表达式可以测试字符串中的规律,进而提取有用的信息,比如通过正则表达式可以查看字符串中是否含有电话号码或邮箱等信息,可以进行数据识别和验证。使用正则表达式可以识别目标文本,进而提取、删除或替换文本。 第2节 正则表达式 2.2 正则表达式的字符 2.2.1 普通字符 字符描述cx匹配由x指明的控制字符。例如, cM 匹配一个 Control-M 或回车符。x 的值必须为 A-Z 或 a-z 之一。否则,将 c 视为一个原义的 c 字符。f匹配一个换页符。等价于 x0c 和 cL。n匹配一个换行符。等价于 x0a 和 cJ。r匹配一个回车符。等价于 x0d 和 cM。s匹配任何空白字符,包括空格、制表符、换页符等等。等价于 fnrtv。S匹配任何非空白字符。等价于 fnrtv。t匹配一个制表符。等价于 x09 和 cI。v匹配一个垂直制表符。等价于 x0b 和 cK。第2节 正则表达式 2.2 正则表达式的字符 2.2.2 特殊字符 特殊字符描述.匹配任何单个字符。例如正则表达式“c.c”能匹配如下字符串:“cuc”、“cac”、“c c”,但是不匹配“cuuc”,“c.c”可以匹配“cuuc”。 匹配括号中的任何一个字符。例如正则表达式“cuvwc”匹配cuc、cvc和cwc,但是不匹配cac、cfc。可以在括号中使用连字符-指定字符的区间来简化表示,例如正则表达式0-9可以匹配任何数字字符,这样正则表达式“c0-2c”等价于“c0123456789c”就可以匹配“c0c”、“c1c”、“a2c”等字符串,但是不匹配c3c;还可以制定多个区间,例如“A-Za-z”可以匹配任何大小写字母,“A-Za-z0-9”可以匹配任何的大小写字母或者数字。( )将 () 之间括起来的表达式定义为“组”(group),并且将匹配这个表达式的字符保存到一个临时区域,这个元字符在字符串提取的时候非常有用。把一些字符表示为一个整体,改变优先级、定义提取组两个作用。|将两个匹配条件进行逻辑“或”运算。“apple|banna” 能匹配 “apple” 或 “banna”。“(z|f)ood” 则匹配“zood”或 “food”。 *匹配0至多个在它之前的子表达式,和通配符*没关系。例如正则表达式“cuc*”能匹配 “c” 、“cu”、“cuc”以及 “cucc”;例如“.*”意味着能够匹配任意字符串。z(b|c)*zb、zbc、zcb、zccc、zbbbccc。z(ab)*能匹配z、zab、zabab(用括号改变优先级)。+匹配前面的子表达式一次或多次,和*对比(0到多次)。例如正则表达式9+匹配9、99、999等。 “zo+”能匹配 “zo”以及 “zoo” ,不能匹配z。 ?匹配前面的子表达式零次或一次。例如,do(es)? 可以匹配 do 或 does 。一般用来匹配“可选部分”。n匹配确定的 n 次。cu2cuu。例如,“e2” 不能匹配“bed”中的“e”,但是能匹配“seed”中的两个“e”。 n,至少匹配n次。例如,“e2,”不能匹配“bed”中的“e”,但能匹配 “seeeeeeeed”中的所有“e”。n,m最少匹配 n 次且最多匹配 m 次。“e1,3”将匹配“seeeeeeeed”中的前三个“e”。匹配一行的开始。例如正则表达式“regex”能够匹配字符串“regex我会用”的开始,但是不能匹配“我会用regex”。 $ 匹配行结束符。例如正则表达式“漂亮$” 能够匹配字符串“你很漂亮”的末尾,但是不能匹配字符串“漂亮的演员”。w匹配字母或数字或下划线或汉字 等价于 A-Za-z0-9_。 s匹配任意的空白符 d匹配数字 b匹配单词的开始或结束第2节 正则表达式 2.3 运算符的优先级 2.3.1 正则表达式-运算符优先级 运算符描述转义符(), (?:), (?=), 圆括号和方括号*, +, ?, n, n, n,m限定符, $, 任何元字符、任何字符定位点和序列(即:位置和顺序)|替换,或操作字符具有高于替换运算符的优先级,使得m|food匹配m或food。若要匹配mood或food,请使用括号创建子表达式,从而产生(m|f)ood。第2节 正则表达式 2.3 运算符的优先级 2.3.2 正则表达式举例匹零和非零开头的数字(0|1-90-9*)$匹配国内电话号码(例如010-66582222)d3-d8|d4-d7匹配手机号码(130-9|145|7|150|1|2|3|5|6|7|8|9|180|1|2|3|5|6|7|8|9)d8$匹配Email地址w+(-+.w+)*w+(-.w+)*.w+(-.w+)*$中国邮政编码(6位数字)1-9d5(?!d) 第3节 XPath 3.1 HTML节点树 XPath ,为XML路径语言(XML Path Language),是一门在可扩展标记语言 (Extensible Markup Language,XML)的文档中查找信息的语言。XPath 可用来在html文档中文档节点树中定位节点。XPath是一种表达式语言,提供在数据结构树中寻找节点的能力,它的返回值可能是节点,节点集合,原子值,以及节点和原子值的混合等。 节点树 新闻标题 新闻内容 第3节 XPath 3.2 XPath语法 XPath 使用路径表达式来选取 HTML文档中的节点或节点集。节点是通过沿着路径 (path) 或者步 (steps) 来选取的。 新闻学概论 29.99 传播学概论 32.23 第3节 XPath 3.3 Xpath表达式 表达式描述nodename选取此节点的所有子节点。/从根节点选取。/从匹配选择的当前节点选择文档中的节点,而不考虑它们的位置。.选取当前节点。.选取当前节点的父节点。选取属性。第3节 XPath 3.4 Xpath谓语 u /body/div1选取属于 body 子元素的第一个 div 元素,即新闻学概论所在的div容器。u /body/divlast()选取属于 body子元素的最后一个 div 元素,即传播学概论所在的div容器。u /body/divlast()-1选取属于 body 子元素的倒数第二个 div 元素。u /body/divposition()30.00选取 body 元素的所有 div 元素,且其中的p元素的值须大于 35.00。第4节 Python语言基础 4.1 Python编辑器 学习Python必须掌握一种集成开发环境,用来实现程序的编辑与调试。友好高效的集成开发环境,能提升Python开发的速度,提高效率。Python编辑器有很多选择。比如Jupyter、Vim、Eclipse、Sublime、Emacs、PyCharm等。本教材选择Jupyter作为编辑器,并使用Jupyter对源代码进行调试。对初学者而言,Python集成开发环境的配置比较复杂,一种简单快速配置集成开发环境的方法是安装Anaconda。Anaconda是一个由Python驱动的开发数据平台,使用Anaconda不但可以方便完成Python环境配置,而且还可以集成Python常用的100多个被广泛使用的包,大大拓展了Python的功能。Anaconda的官网的地址。第4节 Python语言基础 4.2 Python语法基础 4.2.1 变量变量,是在程序执行过程中,其值可以发生改变的量。在Python中,变量能够让用户把要使用的数据赋给一个简短、易于记忆的名字,因此它的应用非常广泛。第4节 Python语言基础 4.2 Python语法基础 4.2.2 输入与输出Python语法中的输入,指在程序运行时,通过外部手段,发送数据给程序,供程序使用的过程,称为数据的输入。输出指程序运行时,对外界的任何修改,都可以称为输出,最常用的输出就是将程序结果显示在屏幕上。Python的常用输入语句为input,常用的输出语句为print。第4节 Python语言基础 4.2 Python语法基础 4.2.3 列表列表是Python一种序列数据类型。序列中的每个元素都有一个位置信息,第一位置为0,第二位置为1,其后依次类推。列表的数据项可以为相同的数据类型也可以为不同的数据类型,列表中的元素可以修改。第4节 Python语言基础 4.2 Python语法基础 4.2.4 元祖元组是Python一种序列数据类型。序列中的每个元素都有一个位置信息,第一位置为0,第二位置为1,其后依次类推。元组的数据项可以为相同的数据类型也可以为不同的数据类型,元组中的元素不可以修改。第4节 Python语言基础 4.2 Python语法基础 4.2.5 字典字典是Python提供的内置映射类型,所谓映射就是一组key和value之间的映射函数,其特点是key的唯一性和key与value的一对多对应关系。自定的定义格式如下所示键(key)必须是唯一的,但值则不必。值可以取任何数据类型,但键必须是不可变的。第4节 Python语言基础 4.2 Python语法基础 4.2.6 注释注释语句在程序运行过程中不运行,其目的是对程序语句的注解。良好的注释不但可以帮助人们准确理解程序,而且对提升程序的可维护性和团队合作效率具有重要意义。因此注释是程序编写时的重要内容。Python可使用成对出现的、和标识注释,也可使用单独#号标识注释(#号后为注释内容)。第4节 Python语言基础 4.3 Python语言的基本结构 4.3.1 while循环while语句的一般形式:while 判断条件: 语句第4节 Python语言基础 4.3 Python语言的基本结构 4.3.2 For循环for语句的一般形式:for in : else: 第4节 Python语言基础 4.3 Python语言的基本结构 4.3.3 If 选择结构Python 中 if 语句基本形式为:if 判断条件: 执行语句else: 执行语句 第4节 Python语言基础 4.3 Python语言的基本结构 4.3.3 If 选择结构如果Python 中 if 语句是多路判断,其形式则为:if 判断条件1: 执行语句1elif 判断条件2: 执行语句2elif 判断条件3: 执行语句3else: 执行语句4第4节 综合举例 4.1 Xpath从格式文本中提取特定格式字符 import re#引入re包s=中国传媒大学是教育部直属的国家“211工程”重点建设大学,已正式进入国家“985优势学科创新平台”项目重点建设高校行列。#将需要匹配的字符串存储于s中pattern = pile(d+) #d+是正则表达式,匹配所有的数字。re的compile方法将正则表达式转换成模式pattern用来匹配。pattern.findall(s)#pattern的findall方法实现模式向字符串s的匹配,执行后返回所有匹配到的结果。第4节 综合举例 4.2 用正则表达式从文本中提取特定格式字符 from lxml import etreetext = 新闻学概论 29.99 传播学概论 32.23 html = etree.HTML(text)result = etree.tostring(html)#print(result)result = html.xpath(/div/p)for item in result: print(item.text)本章小结介绍了超文本标记语言、正则表达式、xpath、python语言基础。 010203解读从网页中提取数据所需的技术基础,并通过案例思考整合应用相关知识点实现页面数据准确提取。重点介绍超文本标记语言、正则表达式、xpath、python语言配合实现对网络数据的提取。思考请给出如下html代码的页面显示效果01中国传媒大学 新闻学专业 传播学专业 戏剧与影视 思考请给出xpath选择右侧xml文件中的year节点? 02 Everyday Italian Giada De Laurentiis 2005 30.00 XQuery Kick Start James McGovern Per Bothner Kurt Cagle James Linn Vaidyanathan Nagarajan 2003 49.99 Learning XML Erik T. Ray 2003 39.95