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 相关文章推荐
Python2.x版本中基本的中文编码问题解决
Oct 12 Python
Python的Flask站点中集成xhEditor文本编辑器的教程
Jun 13 Python
Django查询数据库的性能优化示例代码
Sep 24 Python
python中数据爬虫requests库使用方法详解
Feb 11 Python
python将字符串以utf-8格式保存在txt文件中的方法
Oct 30 Python
python3的print()函数的用法图文讲解
Jul 16 Python
基于python实现从尾到头打印链表
Nov 02 Python
Django密码存储策略分析
Jan 09 Python
python随机生成大小写字母数字混合密码(仅20行代码)
Feb 01 Python
Python中包的用法及安装
Feb 11 Python
python+selenium爬取微博热搜存入Mysql的实现方法
Jan 27 Python
Python Pandas常用函数方法总结
Jun 15 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
德生BCL3000的电路分析和打磨
2021/03/02 无线电
PHP网页游戏学习之Xnova(ogame)源码解读(八)
2014/06/23 PHP
php实现字符串反转输出的方法
2015/03/14 PHP
php 利用array_slice函数获取随机数组或前几条数据
2015/09/30 PHP
thinkphp5.1框架容器与依赖注入实例分析
2019/07/23 PHP
javascript 类定义的4种方法
2009/09/12 Javascript
基于jquery的实现简单的表格中增加或删除下一行
2010/08/01 Javascript
基于jquery的让textarea自适应高度的插件
2010/08/03 Javascript
jquery.mobile 共同布局遇到的问题小结
2015/02/10 Javascript
javascript判断变量是否有值的方法
2015/04/20 Javascript
Vue声明式渲染详解
2017/05/17 Javascript
详解vue.js之绑定class和style的示例代码
2017/08/24 Javascript
vue-router中的hash和history两种模式的区别
2018/07/17 Javascript
Vue-router 中hash模式和history模式的区别
2018/07/24 Javascript
js正则匹配多个全部数据问题
2019/12/20 Javascript
js仿京东放大镜效果
2020/08/09 Javascript
解决vue elementUI 使用el-select 时 change事件的触发问题
2020/11/17 Vue.js
[01:12](回顾)DOTA2国际邀请赛,全世界DOTAer的盛宴
2014/07/01 DOTA
使用Python保存网页上的图片或者保存页面为截图
2016/03/05 Python
Python实现Mysql数据库连接池实例详解
2017/04/11 Python
python对excel文档去重及求和的实例
2018/04/18 Python
PyQt5实现拖放功能
2018/04/25 Python
Python pygorithm模块用法示例【常见算法测试】
2018/08/16 Python
python解析含有重复key的json方法
2019/01/22 Python
Django异步任务之Celery的基本使用
2019/03/23 Python
Python设置matplotlib.plot的坐标轴刻度间隔以及刻度范围
2019/06/25 Python
利用Python绘制有趣的万圣节南瓜怪效果
2019/10/31 Python
python3中numpy函数tile的用法详解
2019/12/04 Python
Python tkinter之Bind(绑定事件)的使用示例
2021/02/05 Python
美国最大和最受信任的二手轮胎商店:Bestusedtires.com
2020/06/02 全球购物
What's the difference between an interface and abstract class? (接口与抽象类有什么区别)
2012/10/29 面试题
物业管理大学生个人的自我评价
2013/10/10 职场文书
群众路线学习笔记范文
2014/11/06 职场文书
iPhone13将有八大升级
2021/04/15 数码科技
HTML中的表单Form实现居中效果
2021/05/25 HTML / CSS
Go获取两个时区的时间差
2022/04/20 Golang