还剩7页未读,继续阅读
文本内容:
成果形式:成果名称利实践报告用爬取猫眼电影票房有效信息Python暑期社会实践心得
一、实践目的随着科技的不断发展,不断发展的云计算、不断进步的自动化、不断创新的人工智能的时代已经悄然到来,Python这门语言逐渐成了现在世界最受关注最受人们青睐的一门语言在美国的许多大学里,Python已成为了他们最偏爱和青睐的打开编程大门的第一门语言,从它出现到现在都已经过了许多年了那些十分高级的游戏系统或者操作系统可能你不会选择用Python来编写,但我们必须承认的是Python这个语言比起其他语言真的可以更加普遍的使用,各种各样的桌面还有web应用或框架差不多能够使用Python来开发这几年来,Python这门语言开始逐渐的延伸到了工程、科学还有数学计算等许多的领域之中通过这次的暑期社会实践我们开始了解并学习关于python的知识并加以运用;我们在假期实践中了解到了到底什么是Python,到底什么是爬虫,爬虫的设计思路和分类,学会简单的爬取所需的网站信息这次的暑期实践将我们带入了Python的大门,在后续更加广阔的学习和生活当中,当我们要使用一些网络上或者市场上没有数据的时候,或者我们不想特意花钱去购买的时候,我们就可以用到自己所学的知识,让自己变成一个爬虫工程师,通过自己的努力,找到自己需要的数据
1.Python可以做什么首先,Python这门语言通过使用自己的类似于Numpy、matplotlib padas等等这样的科学计算包,实现很多繁琐的数据分析就是他最基本的功能网络爬虫,Python能够很好的被运用到从网上爬取类似于音频、文本数据或者图片还有音频数据等等各种形式的信息上去词云图,语料集会被Python进行了分词处理,最后输出带有自己特点的词云图Python这门语言如此强大的重要原因之一就是他可以进行web开发,由于它真的是属于工程级别的开发,所以真的能够彻底的完成网站的开发
2.Python适合用于做什么尽管是作为一门通用语言的Python,各种各样类型程序的编写也能够用它来完成,当然了,最常见的情况下Python被用来编写下面的这些应用程序脚本是一个一些简单不复杂的程序自动的进行普通的管理事务,就像在系统中新增加的用户、把指定的文件上传到相关网站、从网站下载需要的文件等网站开发是一个作为一个可以在短时间内创立动态网站的工具语言,大量的Python项目受到了开发人员的偏爱和喜欢就比如说使用Python开发出来的被大家十分喜爱的新闻网站WWW.redd it.com文本处理是一个在文本文件处理还有字符串这些方面Python体现出了他十分强大的处理能力,就比方说Unicode或者正则表达式等等科学计算是一个不少优秀的Python计算库都可以在网络中找到,所以许多用于比如说类似于在统计或者绘图还有数学计算一类上会用到的函数都能够被它所给予教育也是一个因为Python这门语言比起其他的一些语言而言,更加的容易又十分的实用,教学是把它当作学生们的第一门编程语言已经是愈来愈多学校的不二选择诚然,并不是对所有的项目来讲Python都是最好的选择,C++、C#、Java等这些语言的处理速度比起Python的速度要确实会显得更加的快一些,所以一般来说人们都不会用Python来开发一个新的操作系统就算是这样,当要求程序员必须要更多地压缩在做项目的时候花费的时间的时候,一般他们任然会更加偏向于选择Python这门语言
3.Phthon的用途数据分析师快速开发快速验证,分析数据得到想要的结果自动化运维自动化的解决大批的运维任务游戏开发者一般是作为游戏脚本内嵌在游戏中网站开发自己创立网站在django,flask等的帮助下通过爬虫处理或者取得许多的数据爬合适的酒店、批量下载电视剧电影或者系统管理员的脚本工作还有投资策略等等或者例如自动备份你的MP3MP4这样的日常;还能够利用Python做出许多的比如说类似知乎或者YouTube这样有名的网站
二、实践内容
1.解释爬虫网络爬虫,又被叫作网络机器人或者被叫做网页蜘蛛,F0AF社区里,更加普遍的叫法是网页追逐者,它是一种脚本或程序,能够依据确定的规则,不用人为操作自主的捕去获万维网的信息它还有一些类似于蠕虫、蚂蚁或者模拟程序还有自动索引等比较少用的称呼按照应用的环境来划分,一般能够将网络爬虫划分成通用爬虫还有聚焦爬虫这两个类型网络爬虫的主要的意图就是把需要下载的网页从网络上下载到本地,然后创造出一个与网络上相同的内容镜像备份而那种〃针对明确主题要求〃的网络爬虫程序就叫做聚焦爬虫,在实行网页捕获的时候聚焦爬虫会挑选还有处理所捕获的内容,力所能及的尽量确保只捕获那些被我们所需要的有用的网页内容和信息,这就是爬虫和通用搜索引擎爬虫的不同之处
2.项目的设计写一个简单的html网页程序htmlheadtitle1704970502/title/headbody赵秋/body/html
3.项目的实现(代码)例L[11,22,33,22,44,alex,[1234,2323]]计算元素22出现的次数并且打印输出程序li=[ll,22,33,22,44,5,alex5,[1234,2323]]c=li.count22print c例
2.获取当前88索引位置,打印输出,并且将100插入到索引为3的位置,打印输出Li=[11,22,33,22,44,99,88,1,2,5]程序li=[ll,22,33,22,44,99,88,1,2,5]i=li.index88print ili.insert3,100print li例
3.删除列表中的指定值100,22,33,22,44,99,88,100,1,2,5]打印输出,然后对之前未删除的当前列表进行翻转,打印输出结果程序li=[ll,22,33,22,44,99,88,100,1,2,5]li.remove100print li22,33,22,44,99,88,100,1,2,5]li.reverse printli
三、实践过程
1.通用爬虫1抓取网页搜索引擎网络爬虫的工作的过程a.第一步是选出一些合适的种子URL,然后把这些种子URL装到等待抓取URL的队列里b.第二步是取出等待抓取的种子URL,然后获得主机IP,再下载下来种子URL所对映的网页,保存到之前下载网页库里,接着把这些URL存到已经抓取的种子URL队伍里去c.分析已抓取URL队列中的URL,分析其中的其他URL,并且将URL放入待抓取URL队列,然后进入到下一个循环....然而这是之前就已经有了一定规则的搜索引擎蜘蛛的爬行,按规定网络爬虫必须服从一些文件或者是命令,就比如说像Robots协议或者说那些已经被标注成nofollow的链接2数据存储那些由爬虫抓取到的各种各样的网页,搜索引擎会把这些信息存储到最原始的页面的数据库里用户在使用浏览器的时候获得的HTML与里面的页面信息是全部相同的抓取页面的时候,搜索引擎蜘蛛也会进行对是否有一样的内容进行比对,如果碰到了那些有许多的复制或者说是抄袭的内容的访问权重非常低的网站,就会有停止爬行的概率3预处理爬虫抓取得到的页面会被搜索引擎做各式各样的处理的流程提取文字-中文分词一消除噪音比如版权声明文字、导航条、广告等……一索引处理一链接关系计算一特殊文件处理一....即使不说HTML文件,各种各样的以文字为基础的文件类型也会经常被搜索引擎抓取和索引,就比如说PPT或者TXT或者PDF或者XLS或者WPS这些类型的文件等等在最后的搜索结果里我们还是会时常看到上述那些各种文件的类型但是现在例如Flash、视频或者图片这种非文字类型的内容,还无法使用搜索引擎来处理,也没办法执行程序还有脚本4提供检索服务,网站排名搜索引擎会在对数据的处理还有重新组织完成以后,将一些关键字的检索的服务呈交给需要的用户同一时刻,会由PageRank值进行一个相关网站的排名,如此,在最后的搜索结果里排在前面的那些就是Rank值相对来说更加高的网站啦,自然我们如果有足够的人民币,也能随心所欲的用钱去买这个排名
2.聚焦爬虫1Get方式通常被我们用来向服务器获取数据的就叫做GET请求例如要批量爬取贴吧的页面数据2POST方式data参数一般是存在于Request请求中,参数data它即我们需要传输的数据信息,data参数一般都被用于POST中,data参数就是一个字典,在这本字典里会进行匹配键值对有道翻译网站Fiddler被用来观察一开始我们输入进去进行检测的数据,POST请求就是里面的一项,但是对服务器发去的请求数据它是没有在url中的,这样的话,我们就能够尝试对这个POST请求进行模拟接着,我们就能够试着发送请求,通过上面模拟的POST方式当我们在进行POST请求的发送的时候,headers里有一些需要我们去特别注意的属性就比如Content-Type:application/x-www-form-urlencoded表示浏览器提交Web表单的时候使用,表单数据会根据namel=valuelname2=value2键值对形式来完成编码等等3处理HTTPS请求SSL证书验证当我们上网的时候以https开头的网站几乎可以说是各个地方都可以看到的,能够为HTTPS请求验证SSL证书是urllib2的重要作用之一,那些可以被正常的访问的网站就是有被CA认证过的SSL证书的,就比如说https://www.baidu.com/等这样的网站...假使说网站的SSL证书验证是没有通过CA认证的,或者是服务器的安全证书没有被操作系统信任,就例如在访问12306网站的时候,会警告说用户证书不受信任有消息说12306不能通过CA认证,因为他们的网站证书由自己完成的,
四、实践体会
1.Python相对来说易于学习编程不简单甚至可以说是很难,所以从绝对的意义上讲,如果你不是早就有了一定的编程基础,那么编程语言对你而言是很难学习得但从相对的意义上来讲,由于Python的它的语法更具有可读性,语义更加的直白,这些属性让它相对于其他的语言来讲学习起来更加的简单因为各种原因,Python的代码阅读起来是很简单轻松的第一,由于代码的编写是在高级的抽象中进行的,所以Python代码的每行都可以映射出非常直观的操作第二,控制结构,就比如说if一then,for一loops条件等等,一些简单的类似于and,in还有not等等的词语,它们的含义相对来说于它本来的含义更加相似第三,Python这门语言对缩进有着很硬的控制要求,有效的避免了一些常常出现的错误,与此同时还让代码读起来更加的轻松容易
2.Python是一种高级语言和另外的很多语言比较,比较而言,Python这门语言似乎更加的“高级”,它不用,甚至不许用户去思考过多的很多其他语言必须要去思考的底层的细节Python还有一些其他的高级语言都更加偏向于将那些要在底层语言中确切说清楚的各式各样死板的声明藏起来虽然需要付出优化艰难、降低性能的代价,但是这确实可以让我们编写的代码能够更加清晰紧凑一些看似简单的行为,就比如说我们想要从文件中里读取纯文本对直接与文件系统接触的人来讲,从概念上看,看起来用两个简单操作就能够完成第一步是将文件打开,再从它的里面读取但事实上经历的过程远超过这些,而且与Python相比,更加底层的语言常常强迫或者最少是激励这一点我们不可否认比如通过块的形式来读取文件块,同时分配它们到缓里等等比较而言,在Python这门语言里,如果想要文件里所有内容,只用读取这样的一个代码text=open,,hello_world.txt.read这种简单有效并非Python自己的特点;可与其他语言比较而言,很少有另外的语言能与和Python的特征相兀敌
3.Python是一种通用语言Python作为一门有很好的普适性的语言这就意味着,它的目的是让程序员能够编写出各种类型的应用以便可以用到各种各样的领域里,而不仅仅是只运用到特定问题上从这方面来讲,Python这门语言是能够与那些在专门为相对特定领域而产生的语言相比较的,就比如说PHP还有R其他的语言在原则上可应用于许多环境,但是它们仍然针对指定的用例做了明确提高优化人们常常将Python叫作“一切事物的第二个最棒的语言”,这样的情绪很好的被Python捕获到了,虽然Python在许多的条件下还不能作为首选的最好的语言去解决那些特定领域的问题,可Python所拥有的充足的灵活性还有优异的支持性这些优点,依然能够让人们在不少领域有效地把问题处理好实际上,在很多不同的领域里,Python都能够被有效的利用,这让Python的学习变得很有意义作为一个合格的程序员,如果可以利用单一语言就能够完成全部的事,而不是因为自己得到的任务不同,必须不断转变不同的语言还有环境里,这是一个很好的事情由于互联网现在在生活中占据了愈来愈重要的位置,数字化的时代悄然到来,科技的发展与许许多多程序员的贡献与创新有着密切的关系不管你以后将要从事何种工作,对所有人而言,学会怎样编程都是非常重要的,学会编程会提高我们的决策能力,活跃我们的思维,让我们可以在生活中,学习中,工作中独树一帜Python愈来愈重要Python是当今世界上大家都在使用的一门语言,有的时候我们都能够将它称作功利主义了,这是由于人们将它设计得让人们越来越容易的理解和编写Python和其他的语言比较起来可以说不是一门困难的语言了在如此多语言的世界里,只有极少数的语言能够完成性能强大但是又简单的这一要求,但是Python能够很好的做到这一点我们在不断地学习和实践中慢慢发现Python真的是一门简单又实用的语言,学习永远都不会太晚。
个人认证
优秀文档
获得点赞 0