Python 是一种极具可读性和通用性的编程语言。Python 这个名字的灵感来自于英国喜剧团体 Monty Python,它的开发团队有一个重要的基础目标,就是使语言使用起来很有趣。Python 易于设置,并且是用相对直接的风格来编写,对错误会提供即时反馈,对初学者而言是个很好的选择。
Python 是一种多范式语言,也就是说,它支持多种编程风格,包括脚本和面向对象,这使得它适用于通用目的。随着越来越多地在工业中,被诸如联合太空联盟(NASA 的主要飞机支持承包商)和工业光魔(VFX 和卢卡斯影业的动画工作室)等组织使用,Python 为那些寻求额外编程语言的人提供了巨大的潜力 。
Python 比其他编程语言更加简单、易学,其面向对象特性甚至比Java、C#、.NET更加彻底,因此非常适合快速开发。Python 已经成为最受欢迎的程序设计语言之一。2011 年 1 月,它被 TIOBE 编程语言排行榜评为 2010 年度语言。2018 年 4 月的 TIOBE 排行榜,Python 依旧排名第四。
Python由于语法简洁,功能强大,且在人工智能、大数据方面展现出效率优势,越来越受到欢迎。数据显示,2017年在雇主发布的职位说明中,Python技能需求增速达到174%,居于首位。
Python当下真的很火。Python实战项目,也一直尤为关注,接下来,和大家介绍下Python练手的实战项目。
1、爬取网站美图
爬取图片是最常见的爬虫入门项目,不复杂却能很好地熟悉Python语法、掌握爬虫思路。当然有两个点要注意:一、不要侵犯版权,二、要注意营养。
♦思路流程
第一步:获取网址的response,分页内容,解析后提取图集的地址。
第二步:获取网址的response,图集分页,解析后提取图片的下载地址。
第三步:下载图片(也就是获取二进制内容,然后在本地复刻一份)。
♦部分代码
♦运行结果
2、爬取微博数据
爬虫的最大功能之一就是整合数据,能弄到更全面的信息,真正做好大数据的分析,在这个数据说话的年代,影响是决定性的。(注意别侵权)
♦思路流程
1、利用chrome浏览器,获取自己的cookie。
2、获取你要爬取的用户的微博User_id
3、将获得的两项内容填入到weibo.py中,替换代码中的YOUR_USER_ID和#YOUR_COOKIE,运行代码。
♦部分代码
用wordcloud等软件生成词云,它会根据信息的频率、权重按比列显示关键字的字体大小。
3、爬取王者荣耀全套皮肤壁纸
怎么获取全套皮肤?用钱买,或者用爬虫爬取下来~虽然后者不能穿。这个案例稍微复杂一点,但是一个非常值得学习的项目。
♦思路流程
首先进入所有英雄列表,你会看到下图
在这个网页中包含了所有的英雄名称。点击其中一个英雄例如“百里守约”,进去后如下图:
网址中196.shtml以前的字符都是不变的,变化的只是196.shtml。而196是“百里守约”所对应的数字,要想爬取图片就应该进入每个英雄图片所在的网址,而网址的关键就是对应的数字。那么这些数字怎么找呢?
在所有英雄列表中,打开浏览器的开发者工具,刷新,找到一个json格式的文件,如图所示:
这时就会看到所有英雄对应的数字了。在上图所示的Headers中可以找到该json文件对应的网址形式。将其导入Python,把这些数字提取出来,然后模拟出所有英雄的网址即可
♦小节代码:
#爬取王者荣耀英雄图片
#导入所需模块
import requests
import re
import os
#导入json文件(里面有所有英雄的名字及数字)
head={'User-Agent':'换成你自己的head'}
html = requests.get(url,headers = head)
html=requests.get(url)
html_json=html.json()
#提取英雄名字和数字
hero_name=list(map(lambda x:x['cname'],html_json)) #名字
hero_number=list(map(lambda x:x['ename'],html_json)) #数字
♦下载图片
现在可以进入所有英雄的网址并爬取网址下的图片了。进入一个英雄的网址,打开开发者工具,在NetWork下刷新并找到英雄的皮肤图片。如图所示:
然后在Headers中查看该图片的网址。会发现皮肤图片是有规律的。我们可以用这样的方式来模拟图片网址
'http://game.gtimg.cn/images/yxzj/img201606/skin/hero-info/'+str(v)+'/'+str(v)+'-bigskin-'+str(u)+'.jpg',
在该网址中只有str(v)与str(u)是改变的(str( )是Python中的一个函数),str(v)是英雄对应的数字,str(u)只是图片编号,例如第一个图片就是1,第二个就是2,第三个……而一个英雄的皮肤应该不会超过12个(可以将这个值调到20等)。接着就是下载了。
♦下载代码:
执行完上面的代码后只需要执行main函数就行了
爬取下来的图片是这样,每个文件夹里面是该英雄对应的图片,如下图:
4、 Python进行微信好友分析
需要模块:
wxpy是用来查看以及操作微信的第三方模块,通过它可以获取到自己的微信好友的个签,地区以及昵称等.
pyecharts是做可视化界面的非常强大的工具之一,功能非常齐全,产品的界面非常漂亮
基本思路:
通过wxpy登录自己的微信同时获取所有的好友信息,然后进行数据清洗,然后使用pyecharts进行数据展示
部分代码:
效果展示:
5、Python爬取表情包
基本思路:向目标网址发送request请求得到源码,使用re正则匹配出想要的数据
部分代码:
效果展示:
总结:
为什么要用Python?
简单:Python 是一种代表简单主义思想的语言。
易学:因为 Python 有极其简单的说明文档,因此 Python 极其容易上手。
速度快:Python 的底层是用 C 语言写的,很多标准库和第三方库也都是用 C 写的,运行速度非常快。
应用领域广:Python 在 Web开发、服务器软件开发等多方面也都有着广泛的应用,并具有突出优势。
很多其他编程语言的程序员都纷纷想踏入人工智能领域。作为最流行的机器学习语言,Python 可以说是入门机器学习最有效率的一门武器。
人生苦短,Python当歌!学习,其实是一个坚持、分享、交流、提高的过程。赶紧去试试吧,说这么多要用起来哦!
本文的文字及图片来源于网络加上自己的想法,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。