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 相关文章推荐
Python升级提示Tkinter模块找不到的解决方法
Aug 22 Python
利用Python破解验证码实例详解
Dec 08 Python
python使用xslt提取网页数据的方法
Feb 23 Python
Python输入二维数组方法
Apr 13 Python
Sanic框架安装与简单入门示例
Jul 16 Python
详解如何在Apache中运行Python WSGI应用
Jan 02 Python
Python父目录、子目录的相互调用方法
Feb 16 Python
对python借助百度云API对评论进行观点抽取的方法详解
Feb 21 Python
Python3 JSON编码解码方法详解
Sep 06 Python
Python将列表中的元素转化为数字并排序的示例
Dec 25 Python
python excel多行合并的方法
Dec 09 Python
python 批量压缩图片的脚本
Jun 02 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
实用函数2
2007/11/08 PHP
Destoon模板制作简明教程
2014/06/20 PHP
thinkPHP多语言切换设置方法详解
2016/11/11 PHP
php实现头像上传预览功能
2017/04/27 PHP
PHP实现git部署的方法教程
2017/12/19 PHP
js 替换
2008/02/19 Javascript
jQuery 表单验证扩展代码(一)
2010/10/11 Javascript
jquery的父子兄弟节点查找示例代码
2014/03/03 Javascript
jquery 按键盘上的enter事件
2014/05/11 Javascript
jQuery中:first选择器用法实例
2014/12/30 Javascript
详解JavaScript的while循环的使用
2015/06/03 Javascript
js实现文本框输入文字个数限制代码
2015/12/25 Javascript
jQuery使用contains过滤器实现精确匹配方法详解
2016/02/25 Javascript
jQuery实现内容定时切换效果完整实例
2016/04/06 Javascript
原生JS获取元素集合的子元素宽度实例
2016/12/14 Javascript
vue2.0实现分页组件的实例代码
2017/06/22 Javascript
React Native 环境搭建的教程
2017/08/19 Javascript
Angular实现的内置过滤器orderBy排序与模糊查询功能示例
2017/12/29 Javascript
在vue中使用echarts图表实例代码详解
2018/10/22 Javascript
JQuery模拟实现网页中自定义鼠标右键菜单功能
2018/11/14 jQuery
JavaScript函数式编程(Functional Programming)声明式与命令式实例分析
2019/05/21 Javascript
解决echarts图表使用v-show控制图表显示不全的问题
2020/07/19 Javascript
[03:58]兄弟们,回来开黑了!DOTA2昔日战友招募宣传视频
2016/07/17 DOTA
在Python中编写数据库模块的教程
2015/04/29 Python
基于Python os模块常用命令介绍
2017/11/03 Python
Python编程之基于概率论的分类方法:朴素贝叶斯
2017/11/11 Python
python字典setdefault方法和get方法使用实例
2019/12/25 Python
Python hashlib和hmac模块使用方法解析
2020/12/08 Python
营业员个人总结的自我评价
2013/10/25 职场文书
实习指导老师评语
2014/04/26 职场文书
土建专业毕业生自荐书
2014/07/04 职场文书
新店开张活动方案
2014/08/24 职场文书
狮子林导游词
2015/02/03 职场文书
不会写演讲稿,快来看看这篇文章!
2019/08/06 职场文书
JavaScript实现复选框全选功能
2021/04/11 Javascript
MySQL外键约束(FOREIGN KEY)案例讲解
2021/08/23 MySQL