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中enumerate函数遍历元素用法分析
Mar 11 Python
python利用socketserver实现并发套接字功能
Jan 26 Python
使用Django和Python创建Json response的方法
Mar 26 Python
详谈python3中用for循环删除列表中元素的坑
Apr 19 Python
Python 查找字符在字符串中的位置实例
May 02 Python
python实现下载pop3邮件保存到本地
Jun 19 Python
在django模板中实现超链接配置
Aug 21 Python
pytorch方法测试详解——归一化(BatchNorm2d)
Jan 15 Python
Python3变量与基本数据类型用法实例分析
Feb 14 Python
Java byte数组操纵方式代码实例解析
Jul 22 Python
Python编程源码报错解决方法总结经验分享
Oct 05 Python
Python 正则模块详情
Nov 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
php模拟post行为代码总结(POST方式不是绝对安全)
2012/02/22 PHP
ubuntu12.04使用c编写php扩展模块教程分享
2013/12/25 PHP
php+jquery+html实现点击不刷新加载更多的实例代码
2016/08/12 PHP
thinkphp3.2实现跨控制器调用其他模块的方法
2017/03/14 PHP
Laravel 框架路由原理与路由访问实例分析
2020/04/14 PHP
javaScript Array(数组)相关方法简述
2009/07/25 Javascript
jQuery 学习第五课 Ajax 使用说明
2010/05/17 Javascript
用js实现判断当前网址的来路如果不是指定的来路就跳转到指定页面
2011/05/02 Javascript
ie7+背景透明文字不透明超级简单的实现方法
2014/01/17 Javascript
动态创建script标签实现跨域资源访问的方法介绍
2014/02/28 Javascript
javascript闭包传参和事件的循环绑定示例探讨
2014/04/17 Javascript
使用phantomjs进行网页抓取的实现代码
2014/09/29 Javascript
jQuery中die()方法用法实例
2015/01/19 Javascript
js实现百度联盟中一款不错的图片切换效果完整实例
2015/03/04 Javascript
jQuery检测返回值的数据类型
2015/07/13 Javascript
JS动态加载脚本并执行回调操作
2016/08/24 Javascript
Angular表单验证实例详解
2016/10/20 Javascript
实现点击下箭头变上箭头来回切换的两种方法【推荐】
2016/12/14 Javascript
js实现获取鼠标当前的位置
2016/12/14 Javascript
基于jQuery实现照片墙自动播放特效
2017/01/12 Javascript
详解vue中组件参数
2018/07/09 Javascript
如何使用pm2快速将项目部署到远程服务器
2019/03/12 Javascript
Python中列表和元组的使用方法和区别详解
2020/12/30 Python
python list排序的两种方法及实例讲解
2017/03/20 Python
python实现教务管理系统
2018/03/12 Python
python搭建服务器实现两个Android客户端间收发消息
2018/04/12 Python
如何实现删除numpy.array中的行或列
2018/05/08 Python
python实现朴素贝叶斯算法
2018/11/19 Python
opencv 形态学变换(开运算,闭运算,梯度运算)
2020/07/07 Python
整理HTML5移动端开发的常用触摸事件
2016/04/15 HTML / CSS
Tod’s英国官方网站:意大利奢华手工制作手袋和鞋履
2019/03/15 全球购物
乌克兰排名第一的在线旅游超市:Farvater.Travel
2020/01/02 全球购物
查询优化的一般准则有哪些
2015/03/08 面试题
军校制空专业毕业生自我鉴定
2013/11/16 职场文书
物理课外活动总结
2014/08/27 职场文书
一条慢SQL语句引发的改造之路
2022/03/16 MySQL