python爬虫容易学吗


Posted in Python onJune 02, 2020

随着大数据时代的到来,数据将如同煤电气油一样,成为我们最重要的能源之一,然而这种能源是可以源源不断产生、可再生的。而Python爬虫作为获取数据的关键一环,在大数据时代有着极为重要的作用。于是许多同学就前来咨询:Python爬虫好学吗?

什么是爬虫?

网络爬虫,又被称为网页蜘蛛,网络机器人,是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。

数据从何而来?

要想学Python首先请问:我们所爬的数据,是从哪里来的呢?

企业产生的用户数据:百度指数、阿里指数、TBI腾讯浏览指数、新浪微博指数;

数据平台购买数据:数据堂、国云数据市场、贵阳大数据交易所;

政府/机构公开的数据:中华人民共和国国家统计局数据、世界银行公开数据、联合国数据、纳斯达克;

数据管理咨询公司:麦肯锡、埃森哲、艾瑞咨询;

爬取网络数据:如果需要的数据市场上没有,或者不愿意购买,那么可以选择招/做一名爬虫工程师,自己动手丰衣足食。

怎么抓取页面数据?

网页三大特征:

网页都有自己唯一的URL(统一资源定位符)来进行定位;

网页都使用HTML (超文本标记语言)来描述页面信息;

网页都使用HTTP/HTTPS(超文本传输协议)协议来传输HTML数据;

爬虫的设计思路:

首先确定需要爬取的网页URL地址。

通过HTTP/HTTP协议来获取对应的HTML页面。

提取HTML页面里有用的数据:

a. 如果是需要的数据,就保存起来。

b. 如果是页面里的其他URL,那就继续执行第二步。

结语:Python爬虫的学习实际上在Python学习过程中是一个基础入门级的部分,学起来没啥难的,但它确实是职业能力中不可或缺的技能之一。、

内容扩展:

一个简单的爬虫实例:

import urllib,urllib2
import re
def geturllist():
  # 不访问网站,而是实例一个对象,为了模拟浏览器访问服务器
  req = urllib2.Request("http://www.budejie.com/video/")
  
  # 添加申请访问的header,让对方服务器误以为是浏览器申请访问(参数是通过浏览器复制过来的)
  req.add_header('User-Agent',' Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36')
 
  # 打开我刚才创建的实例对象
  res =urllib2.urlopen(req)
  html = res.read()
  print html # 访问到了资源代码
 
  # 定义一个正则化表达式为了获取我要的视频网址
  reg = r'data-mp4="(.*?)">'
  # 将网页源码中的视频网址找出来
  urllist = re.findall(reg,html)
  # print urllist
 
  # 有20个视频网址,用for循环一个一个下载出来
  n = 1
  for url in urllist:
    # url 视频网址,'%s.mp4'下载后的名字,url.split('/')[-1] 将字符串按照‘/'分开
    urllib.urlretrieve(url,'%s.mp4' %url.split('/')[-1]) # 下载视频
    n = n+1
 
geturllist()

到此这篇关于python爬虫容易学吗的文章就介绍到这了,更多相关python爬虫好学吗内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
解决python3 json数据包含中文的读写问题
May 10 Python
如何用python整理附件
May 13 Python
pyqt5实现俄罗斯方块游戏
Jan 11 Python
python实现把二维列表变为一维列表的方法分析
Oct 08 Python
python 使用opencv 把视频分割成图片示例
Dec 12 Python
python中count函数简单的实例讲解
Feb 06 Python
Python面向对象程序设计之继承、多态原理与用法详解
Mar 23 Python
解决python运行启动报错问题
Jun 01 Python
浅谈numpy中np.array()与np.asarray的区别以及.tolist
Jun 03 Python
Python新建项目自动添加介绍和utf-8编码的方法
Dec 26 Python
java字符串格式化输出实例讲解
Jan 06 Python
python实现A*寻路算法
Jun 13 Python
基于Python词云分析政府工作报告关键词
Jun 02 #Python
使用OpenCV获取图像某点的颜色值,并设置某点的颜色
Jun 02 #Python
如何利用python web框架做文件流下载的实现示例
Jun 02 #Python
python3+opencv 使用灰度直方图来判断图片的亮暗操作
Jun 02 #Python
Java多线程实现四种方式原理详解
Jun 02 #Python
Python+Kepler.gl轻松制作酷炫路径动画的实现示例
Jun 02 #Python
opencv+python实现鼠标点击图像,输出该点的RGB和HSV值
Jun 02 #Python
You might like
php Smarty date_format [格式化时间日期]
2010/03/15 PHP
PHP正则表达式过滤html标签属性(DEMO)
2016/05/04 PHP
PHP中加速、缓存扩展的区别和作用详解(eAccelerator、memcached、xcache、APC )
2016/07/09 PHP
php+Memcached实现简单留言板功能示例
2017/02/15 PHP
PHP去除字符串最后一个字符的三种方法实例
2017/03/01 PHP
解决php用mysql方式连接数据库出现Deprecated报错问题
2019/12/25 PHP
goto语法在PHP中的使用教程
2020/09/17 PHP
根据分辨率不同,调用不同的css文件
2006/07/07 Javascript
jQuery中的val()示例应用
2014/02/26 Javascript
js使用for循环查询数组中是否存在某个值
2014/08/12 Javascript
如何让你的Lightbox支持滚轮缩放及Base64图片
2014/12/04 Javascript
简介JavaScript中用于处理正切的Math.tan()方法
2015/06/15 Javascript
基于bootstrap-datetimepicker.js不支持IE8的快速解决方法
2016/11/07 Javascript
AngularJS变量及过滤器Filter用法分析
2016/11/22 Javascript
jQuery设计思想
2017/03/07 Javascript
激动人心的 Angular HttpClient的源码解析
2017/07/10 Javascript
JS实现匀加速与匀减速运动的方法示例
2017/09/04 Javascript
element ui里dialog关闭后清除验证条件方法
2018/02/26 Javascript
记一次vue跨域的解决
2020/10/21 Javascript
[56:29]Secret vs Optic 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
[39:21]LGD vs OG 2019国际邀请赛淘汰赛 胜者组 BO3 第二场 8.24
2019/09/10 DOTA
Python中的连接符(+、+=)示例详解
2017/01/13 Python
使用python进行拆分大文件的方法
2018/12/10 Python
python协程gevent案例 爬取斗鱼图片过程解析
2019/08/27 Python
如何基于Python实现自动扫雷
2020/01/06 Python
python实现飞机大战游戏(pygame版)
2020/10/26 Python
Python Django搭建网站流程图解
2020/06/13 Python
python 统计list中各个元素出现的次数的几种方法
2021/02/20 Python
微软香港官网及网上商店:Microsoft HK
2016/09/01 全球购物
金融系应届毕业生求职信
2014/05/26 职场文书
党员三严三实对照检查材料
2014/10/13 职场文书
部门2014年度工作总结
2014/11/12 职场文书
中国汉字听写大会观后感
2015/06/02 职场文书
2016公司新年问候语
2015/11/11 职场文书
执行力心得体会范文
2016/01/11 职场文书
详解Python中的进程和线程
2021/06/23 Python