《python金融大数据分析》课件-任务三 Python标准库爬取金融数据_第1页
《python金融大数据分析》课件-任务三 Python标准库爬取金融数据_第2页
《python金融大数据分析》课件-任务三 Python标准库爬取金融数据_第3页
《python金融大数据分析》课件-任务三 Python标准库爬取金融数据_第4页
《python金融大数据分析》课件-任务三 Python标准库爬取金融数据_第5页
已阅读5页,还剩39页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

任务三Python标准库爬取金融数据知识目标1.了解python爬取数据的步骤2.熟悉python爬取数据的方法3.掌握将爬取的数据保存到本地的方法技能目标能够python爬取网页上所需要的金融数据。学习目标目

录CONTENTS任务要求1必备知识2任务实施3任务小结41

任务要求 任务要求如何利用python,获取中国银行外汇牌价数据,并保存在本地?2

必备知识 思考:手动上网的操作过程?第一步:选择并启动浏览器第二步:在浏览器的地址栏中敲入网址,回车,就可以得到这个网页的内容第三步:复制粘贴或者通过其他手动录入表格的形式将数据保存到本地1打开网站浏览器指的是360、Google、Chrome、firefox、UC等等思考:手动上网的操作过程?第一步:启动浏览器,打开浏览器窗口1打开网站在python中这种模块有很多,比如python标准库中自带的一个标准模块,叫做urllib.request。其中:“.”是用来划分层级的。网抓程序模拟浏览器指的是360、Google、Chrome、firefox、UC等等所谓的浏览器就是一个提供互联网访问功能的模块什么是url呢?它的全称是统一资源定位符(UniformResourceLocator),俗称“网址”。我们常说的在互联网上查看的每一个网页、每一个图片,每一个视频,都是互联网上的一个资源,所以访问这个资源时使用的地址就被称为统一资源定位符。思考:手动上网的操作过程?第一步:启动浏览器,打开浏览器窗口第二步:在浏览器的地址栏中敲入网址,回车,就可以得到这个网页的内容1打开网站网抓程序模拟通过urllib.request中的函数urlopen打开网址,获取网页内容比如:urlopen('https://www.baidu.com')思考:手动上网的操作过程?第一步:启动浏览器,打开浏览器窗口第二步:在浏览器的地址栏中敲入网址,回车,就可以得到这个网页的内容1打开网站网抓程序模拟通过python数据分析模块中的函数将获取到的数据保存到本地excel中比如:df.to_excel('路径/名称.xlsx')第三步:复制粘贴或者通过其他手动录入表格的形式将数据保存到本地打开网站1解析网页内容2爬取所需数据3Python爬取数据的基本思路一打开网站#加载包,从urllib.request中导入urlopen这个函数(这一步相当于选择并打开浏览器)fromurllib.requestimporturlopen由于urllib是python自带的模块,因此不需要专门安装。#输入网址,打开网页r=urlopen('/sourcedb/whpj/')urlopen()函数返回一个HttpResponse对象,用于对所得到的网页进行各种操作。#HttpResponse.read()用于读取网页的文本内容,不执行任何编码转换,直接返回一个bytes对象(字节数据)c=r.read()print(c)1解析网页内容2我在浏览器里看到的,可是有表格、有图片,规规整整的文字,为什么这个程序抓下来的却是乱七八糟的一堆混乱的字符呢?输出结果:b'<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""/TR/xhtml1/DTD/xhtml1-transitional.dtd">\n<htmlxmlns="/1999/xhtml">\n<head>\n<metahttp-equiv="Content-Type"content="text/html;charset=utf-8"/>\n<title>\xe4\xb8\xad\xe5\x9b\xbd\xe9\x93\xb6\xe8\xa1\x8c_\xe9\x87\x91\xe8\x9e\x8d\xe5\xb8\x82\xe5\x9c\xba_\xe5\xa4\x96\xe6\xb1\x87\xe7\x89\x8c\xe4\xbb\xb7</title>\n<metacontent=""name="keywords"/>\n<metacontent=""name="description"/>\n<linkhref="/images/boc2013_common.css"rel="stylesheet"type="text/css">\n<linkhref="/images/boc2013_reset.css"rel="stylesheet"type="text/css">\n<linkhref="/images/boc2013_pages.css"rel="stylesheet"type="text/css">\n<scriptlanguage="JavaScript"src="/head_620.js"></script>\n<scriptlanguage="JavaScript"src="/bottom_591.js"></script>\n<scriptlanguage=javascriptsrc="../images/boc2013_search.js"></script>\n<scriptlanguage=javascriptsrc="../images/WebCalendar.js"></script>\n</head>\n\n<body>\n<divclass="wrapper">\n\t<!--\xe5\xa4\xb4\xe9\x83\xa8\xe6\xa8\xa1\xe6\x9d\xbfstart-->\n\t\t\t<scriptlanguage="JavaScript">\n\t\t\t<!--\n\t\t\tcreateTop();\n\t\t\t//-->\n解析网页内容2Charset解析网页内容#Byte类型的对象都有decode方法,可以按照指定的编码标准将该字节流转换字符串。s=c.decode('utf-8')print(s)2输出结果:<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""/TR/xhtml1/DTD/xhtml1-transitional.dtd"><htmlxmlns="/1999/xhtml"><head><metahttp-equiv="Content-Type"content="text/html;charset=utf-8"/><title>中国银行_金融市场_外汇牌价</title><metacontent=""name="keywords"/><metacontent=""name="description"/><linkhref="/images/boc2013_common.css"rel="stylesheet"type="text/css"><linkhref="/images/boc2013_reset.css"rel="stylesheet"type="text/css"><linkhref="/images/boc2013_pages.css"rel="stylesheet"type="text/css"><scriptlanguage="JavaScript"src="/head_620.js"></script><scriptlanguage="JavaScript"src="/bottom_591.js"></script>……………与网页源代码内容一致!在网页空白区域,点击鼠标右键——查看源代码!解析网页内容2输出结果:<head><metahttp-equiv="Content-Type"content="text/html;charset=utf-8"/><title>中国银行_金融市场_外汇牌价</title><metacontent=""name="keywords"/><metacontent=""name="description"/><linkhref="/images/boc2013_common.css"rel="stylesheet"type="text/css"><linkhref="/images/boc2013_reset.css"rel="stylesheet"type="text/css"><linkhref="/images/boc2013_pages.css"rel="stylesheet"type="text/css"><scriptlanguage="JavaScript"src="/head_620.js"></script><scriptlanguage="JavaScript"src="/bottom_591.js"></script><scriptlanguage=javascriptsrc="../images/boc2013_search.js"></script><scriptlanguage=javascriptsrc="../images/WebCalendar.js"></script></head>思考:什么是网页?网页是一个包含HTML标签的纯文本文件,只不过扩展名为“html”或“htm”而非“txt”。HTML:超文本标记语言,专用于编写WEB网页。1.网页文件包括两部分内容:一部分是<>内的“标签”;另一部分是在<>之外的可以显示在浏览器中的文字。<>内的内容不会显示出来,只是规定<>外的内容的格式解析网页内容2例:<fontsize=28color=“red”>我喜欢张传娜老师</font>网页文件包括两部分内容:一部分是<>内的“标签”;另一部分是在<>之外的可以显示在浏览器中的文字。<>内的内容不会显示出来,只是规定<>外的内容的格式字体大小=28字体设定结束颜色=红我喜欢张传娜老师解析网页内容22.HTML网页中的这些标签往往都是成对出现,比如<table></table>、<tr></tr>、<td></td>等。一般情况下,我们需要的重要数据都是放在某一对标签里的。<tablecellpadding="0"align="left"cellspacing="0"width="100%"><tr><td>阿联酋迪拉姆</td><td></td><td>177.93</td><td></td><td>191.15</td><td>183.53</td><tdclass="pjrq">2022.08.1605:30:00</td><td>05:30:00</td></tr></table> 表格行<table>表示表格开始,</table>表示表格结束<tr>表示行开始,</tr>表示行结束<td>表示列开始,</td>列结束列爬取所需数据3要爬取网页中的汇率数据,分为三步:第一步:找到所需<table>第二步:找到该<table>内部的每个<tr>第三步:找到该<table>内部每个<tr>中的每个<td>爬取所需数据#安装beautifulsoupWin+R调取cmd命令窗口,输入:pipinstallbs4#加载beautifulsoupfrombs4importBeautifulSoup#将前面r.read()的对象c交给BeautifulSoup进行分析。参数features='lxml'设定解析器bs_obj=BeautifulSoup(c,features='lxml')BeautifulSoup对象:相当于一个“网页分析器”对象,提供有很多种方法,用于在指定网页中找到标签、提取信息。3使用beautifulsoup(美味汤)精准获取所需信息爬取所需数据第一步:找到所需<table>1.BeautifulSoup.find(标签名):在这个BeautifulSoup.find对象所指向的网页中,按指定名称查找标签。因此,只要把标签的名字“table”,告诉它,它就能够帮我们找到。比如:bs1.find('table')3#使用find函数找到'table'标签t=bs_obj.find('table')print(t)输出结果:<tablecellpadding="0"cellspacing="0"width="100%"><tr><tdalign="right"width="8%">起始时间:</td><tdalign="left"width="100px;"><divclass="search_bar"style="float:left;width:100px;margin-left:10px;"><inputclass="search_ipt"id="erectDate"name="erectDate"onclick="newCalendar(2001,2022,0).show(this);"style="width:100px;"type="text"/></div></td><tdalign="right"width="8%">结束时间:</td><tdalign="left"width="100px;"><divclass="search_bar"style="float:left;width:100px;margin-left:10px;"><inputclass="search_ipt"id="nothing"name="nothing"onclick="newCalendar(2001,2022,0).show(this);"style="width:100px;"type="text"/></div></td>find函数找到的是第一个出现的table标签爬取所需数据第一步:找到所需<table>2.除了“find”方法之外,BeautifulSoup还有一个“find_all”这个方法,顾名思义就是找出表格中所有指定的这个标签。比如我们现在写find_all('table'),那么他返回的这个t就是一个列表,列表中第一个元素是第一个table,而第二个元素就是网页中的第二个table,也就是我们想看到的这个货币数据。3#使用find函数找到所有‘table’标签t=bs_obj.find_all('table')print(t)find_all(‘table’)的返回值,包含网页中所有表格标签<table></table>t=[<table></table>,<table></table>…<table></table>]下标:[0]下标:[1]爬取所需数据第一步:找到所需<table>3.请先用find_all找到所有的表格——一个大的列表,接下来,用下标“[1]”找到这个列表中的第二个元素,也就是我们想要的这张表格,把它赋值给t,那么运行之后变量t就代表了我们想要的这个第二张表格的全部内容。3#使用find_all()函数找到所有’table’标签,将第二个赋值给tt=bs_obj.find_all('table')[1]print(t)<tablealign="left"cellpadding="0"cellspacing="0"width="100%"><tr><th>货币名称</th><th>现汇买入价</th><th>现钞买入价</th><th>现汇卖出价</th><th>现钞卖出价</th><th>中行折算价</th><th>发布日期</th><th>发布时间</th></tr><tr><td>阿联酋迪拉姆</td><td></td><td>177.93</td><td></td><td>191.15</td><td>183.53</td><tdclass="pjrq">2022.08.1605:30:00</td><td>05:30:00</td></tr>爬取所需数据第一步:找到所需<table>3.请先用find_all找到所有的表格——一个大的列表,接下来,用下标“[1]”找到这个列表中的第二个元素,也就是我们想要的这张表格,把它赋值给t,那么运行之后变量t就代表了我们想要的这个第二张表格的全部内容。3#使用find_all()函数找到所有’table’标签,将第二个赋值给tt=bs_obj.find_all('table')[1]这里得到的t,也就是“find”方法返回的这个结果,它本身并不是字符串,而是BeautifulSoup这个模块中自己定义的一种叫做“tag”的对象,也就是标签类型的对象。标签对象(tag):find()或find_all()找到的标签,都是tag类型的对象。该类对象提供了很多方法和属性,以便在这些标签内部继续查找和处理内容,而其中有一个方法也叫做”find_all”。爬取所需数据第二步:找到该<table>内部的每个<tr>1.用find_all找到所有的行——一个大的列表,这里包含我们需要的所有数据!3#使用find_all()函数找到所有’tr’标签,将第二个赋值给all_trall_tr=t.find_all('tr')print(all_tr)[<tr><th>货币名称</th><th>现汇买入价</th><th>现钞买入价</th><th>现汇卖出价</th><th>现钞卖出价</th><th>中行折算价</th><th>发布日期</th><th>发布时间</th></tr>,<tr><td>阿联酋迪拉姆</td><td></td><td>178.1</td><td></td><td>191.33</td><td>184.78</td><tdclass="pjrq">2022.08.1718:07:32</td><td>18:07:32</td></tr>,<tr>标题行,无货币信息,需删掉,否则后面程序会报错爬取所需数据第二步:找到该<table>内部的每个<tr>2.用pop()函数删掉不需要的元素3[<tr><td>阿联酋迪拉姆</td><td></td><td>178.39</td><td></td><td>191.64</td><td>184.6</td><tdclass="pjrq">2022.08.1908:08:36</td><td>08:08:36</td></tr>,<tr><td>澳大利亚元</td><td>467.51</td><td>452.99</td><td>470.95</td><td>473.04</td><td>470.1</td><tdclass="pjrq">2022.08.1908:08:36</td><td>08:08:36</td></tr>,<tr>#list.pop(i)删除下标为i的元素all_tr.pop(0)print(all_tr)爬取所需数据第三步:找到该<table>内每个<tr>中的每个<td>1.创建盛装所需数据的容器——空列表[]3#创建8个空列表,分别盛装货币名称、现汇买入价、现钞买入价、现汇卖出价、现钞卖出价、央行折算价、发布日期和发布时间货币名称=[]现汇买入价=[]现钞买入价=[]现汇卖出价=[]现钞卖出价=[]央行折算价=[]发布日期=[]发布时间=[]爬取所需数据第三步:找到该<table>内每对<tr>中的每对<td>2.向空列表中填入所需数据(1)找到每对<tr>中的<td>3#使用for循环遍历每对<tr>,找到所有tdforrinall_tr:all_td=r.find_all('td')print(all_td)输出结果:[<td>阿联酋迪拉姆</td>,<td></td>,<td>178.8</td>,<td></td>,<td>192.09</td>,<td>185.32</td>,<tdclass="pjrq">2022.08.1913:54:12</td>,<td>13:54:12</td>][<td>澳大利亚元</td>,<td>468.82</td>,<td>454.25</td>,<td>472.26</td>,<td>474.36</td>,<td>470.58</td>,<tdclass="pjrq">2022.08.1913:54:12</td>,<td>13:54:12</td>][<td>巴西里亚尔</td>,<td></td>,<td>126.41</td>,<td></td>,<td>143.53</td>,<td>131.37</td>,<tdclass="pjrq">2022.08.1913:54:12</td>,<td>13:54:12</td>][<td>加拿大元</td>,<td>523.43</td>,<td>506.9</td>,<td>527.29</td>,<td>529.61</td>,<td>525.65</td>,<tdclass="pjrq">2022.08.1913:54:12</td>,<td>13:54:12</td>][<td>瑞士法郎</td>,<td>707.58</td>,<td>685.75</td>,<td>712.56</td>,<td>715.61</td>,<td>711.38</td>,<tdclass="pjrq">2022.08.1913:54:12</td>,<td>13:54:12</td>][<td>丹麦克朗</td>,<td>91.88</td>,<td>89.04</td>,<td>92.62</td>,<td>93.06</td>,<td>92.34</td>,<tdclass="pjrq">2022.08.1913:54:12</td>,<td>13:54:12</td>][<td>欧元</td>,<td>683.79</td>,<td>662.54</td>,<td>688.83</td>,<td>691.05</td>,<td>686.63</td>,<tdclass="pjrq">2022.08.1913:54:12</td>,<td>13:54:12</td>][<td>英镑</td>,<td>808.41</td>,<td>783.29</td>,<td>814.36</td>,<td>817.96</td>,<td>812.15</td>,<tdclass="pjrq">2022.08.1913:54:12</td>,<td>13:54:12</td>]爬取所需数据第三步:找到该<table>内每对<tr>中的每对<td>2.向空列表中填入所需数据(2)从每对<td>中提取所需数据3#使用tag标签的text属性,获取被该标签概括起来的可显示在浏览器中的文字信息。##如取得货币名称forrinall_tr:all_td=r.find_all('td')print(f'货币名称为:{all_td[0].text}')输出结果为:货币名称为:阿联酋迪拉姆货币名称为:澳大利亚元货币名称为:巴西里亚尔货币名称为:加拿大元货币名称为:瑞士法郎货币名称为:丹麦克朗tag.text属性:取得被该标签括起来的可显示在浏览器中的文字信息。

假设标签g代表<td>123</td>,则g.text就是字符串“123”。爬取所需数据第三步:找到该<table>内每对<tr>中的每对<td>2.向空列表中填入所需数据(2)从每对<td>中提取所需数据3#使用tag标签的text属性,获取被该标签概括起来的可显示在浏览器中的文字信息。##如取得货币名称forrinall_tr:all_td=r.find_all('td')print(f’货币名称为:{all_td[0].text}’)f字符串:在{}中直接引用变量名,并用{}括起来,且在字符串开头加上“f”,这样python就会认为{}里的内容是变量,打印时会打印变量的取值。如果不加“f”,则直接打印print()括号中的内容。tag.text属性:取得被该标签括起来的可显示在浏览器中的文字信息。

假设标签g代表<td>123</td>,则g.text就是字符串“123”。例如:a=[1,3,4]print(‘a’)输出结果:aprint(f’{a}’)输出结果:[1,3,4]爬取所需数据第三步:找到该<table>内每对<tr>中的每对<td>练习:3#使用tag标签的text属性,获取被该标签概括起来的可显示再浏览器中的文字信息。##如取得货币名称和其相应的现钞买入价forrinall_tr:all_td=r.find_all('td')print(f’货币名称为:{all_td[0].text},现钞买入价为:{all_td[2].text}’)请在屏幕上打印出货币名称和该货币的现钞买入价输出结果为:货币名称为:阿联酋迪拉姆,现钞买入价为:货币名称为:澳大利亚元,现钞买入价为:468.62货币名称为:巴西里亚尔,现钞买入价为:货币名称为:加拿大元,现钞买入价为:522.9货币名称为:瑞士法郎,现钞买入价为:708.31货币名称为:丹麦克朗,现钞买入价为:91.91爬取所需数据第三步:找到该<table>内每对<tr>中的每对<td>2.向空列表中填入所需数据(2)从每对<td>中提取所需数据3#使用for循环遍历每对<tr>,找到所有tdforrinall_tr:all_td=r.find_all(‘td’)#将提取的数据赋值给新的变量e_name=all_td[0].texte_xhmr=all_td[1].texte_xcmr=all_td[2].texte_xhmc=all_td[3].texte_xcmc=all_td[4].texte_yhzs=all_td[5].texte_date=all_td[6].texte_time=all_td[7].text#将提取的数据添加到前面生成的空列表中货币名称.append(e_name)

现汇买入价.append(e_xhmr)

现钞买入价.append(e_xcmr)

现汇卖出价.append(e_xhmc)

现钞卖出价.append(e_xcmc)

央行折算价.append(e_yhzs)

发布日期.append(e_date)

发布时间.append(e_time)print(货币名称)输出结果为:['阿联酋迪拉姆','澳大利亚元','巴西里亚尔','加拿大元','瑞士法郎','丹麦克朗','欧元','英镑','港币','印尼卢比','印度卢比','日元','韩国元','澳门元','林吉特','挪威克朗','新西兰元','菲律宾比索','卢布','沙特里亚尔','瑞典克朗','新加坡元','泰国铢','土耳其里拉','新台币','美元','南非兰特']print(现汇买入价)输出结果为:['','468.92','','522.87','708.71','91.91','684.15','806.05','86.57','0.0457','','4.9686','0.5107','84.14','151.51','69.41','422.23','12.1','11.03','','64.33','488.66','19.01','37.45','','679.27','40.12']爬取所需数据第三步:找到该<table>内每对<tr>中的每对<td>2.向空列表中填入所需数据(2)从每对<td>中提取所需数据3#使用for循环遍历每对<tr>,找到所有tdforrinall_tr:all_td=r.find_all('td')#将提取的数据添加到前面生成的空列表中货币名称.append(all_td[0].text)

现汇买入价.append(all_td[1].text)

现钞买入价.append(all_td[2].text)

现汇卖出价.append(all_td[3].text)

现钞卖出价.append(all_td[4].text)

央行折算价.append(all_td[5].text)

发布日期.append(all_td[6].text)

发布时间.append(all_td[7].text)print(货币名称)输出结果为:['阿联酋迪拉姆','澳大利亚元','巴西里亚尔','加拿大元','瑞士法郎','丹麦克朗','欧元','英镑','港币','印尼卢比','印度卢比','日元','韩国元','澳门元','林吉特','挪威克朗','新西兰元','菲律宾比索','卢布','沙特里亚尔','瑞典克朗','新加坡元','泰国铢','土耳其里拉','新台币','美元','南非兰特']print(现汇买入价)输出结果为:['','468.92','','522.87','708.71','91.91','684.15','806.05','86.57','0.0457','','4.9686','0.5107','84.14','151.51','69.41','422.23','12.1','11.03','','64.33','488.66','19.01','37.45','','679.27','40.12']爬取所需数据第三步:找到该<table>内每对<tr>中的每对<td>2.向空列表中填入所需数据(2)从每对<td>中提取所需数据3#使用列表生成式,生成8个空列表c=[[]forxinrange(8)]#利用for循环提取数据并填入c包含的8个空列表forrinall_tr:all_td=r.find_all('td')foriinrange(8):b=all_td[i].textc[i].append(b)print(c[0])输出结果为:['阿联酋迪拉姆','澳大利亚元','巴西里亚尔','加拿大元','瑞士法郎','丹麦克朗','欧元','英镑','港币','印尼卢比','印度卢比','日元','韩国元','澳门元','林吉特','挪威克朗','新西兰元','菲律宾比索','卢布','沙特里亚尔','瑞典克朗','新加坡元','泰国铢','土耳其里拉','新台币','美元','南非兰特']print(c[1])输出结果为:['','468.92','','522.87','708.71','91.91','684.15','806.05','86.57','0.0457','','4.9686','0.5107','84.14','151.51','69.41','422.23','12.1','11.03','','64.33','488.66','19.01','37.45','','679.27','40.12']爬取所需数据最后:将提取到的数据存入excel提取出来的数据存在一个大型列表c中,c中的每一个元素是一个小列表,为了将数据按照网页呈现的表格形式存入excel,需对进行整理,整理成数据框DataFrame的形式存入excel备用。3#加载库包importpandasaspdfrompandas.core.frameimportDataFrame#将上述列表转成字典c={'货币名称':c[0],'现汇买入价':c[1],'现钞买入价':c[2],'现汇卖出价':c[3],'现钞卖出价':c[4],'央行折算价':c[5],'发布日期':c[6],'发布时间':c[7]}#将转成字典形式的列表转成数据框汇率=DataFrame(c)print(汇率)#将数据导出到excel汇率.to_excel(‘路径/汇率.xlsx')3

任务实施 请使用python标准库获取中国银行外汇牌价第2页的货币名称、现汇买入价、现汇卖出价及发布日期,并将抓取的数据保存到excel中。任务实施爬取数据步骤#加载库包——启动浏览器fromurllib.requestimporturlopen#打开网站,urlopen()函数返回一个HttpResponse对象,用于对所得到的网页进行各种操作r=urlopen(‘/sourcedb/whpj/index_1.html')#HttpResponse.read()用于读取网页的文本内容,此方法不执行任何编码转换,直接返回一个Byte对象(字节流)c=r.read()#print(c)#使用utf-8对HttpResponse.read()读取的网页文本内容进行解码s=c.decode('utf-8')print(s)#加载库包——在指定网页中找到所需标签。frombs4importBeautifulSoup#将前面r.read

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论