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 Socket传输文件示例
Jan 16 Python
使用python编写监听端
Apr 12 Python
Python 循环语句之 while,for语句详解
Apr 23 Python
浅谈python连续赋值可能引发的错误
Nov 10 Python
python 实现多维数组转向量
Nov 30 Python
Python Flask上下文管理机制实例解析
Mar 16 Python
解决python 虚拟环境删除包无法加载的问题
Jul 13 Python
python性能测试工具locust的使用
Dec 28 Python
python中用Scrapy实现定时爬虫的实例讲解
Jan 18 Python
python中HTMLParser模块知识点总结
Jan 25 Python
python for循环赋值问题
Jun 03 Python
python单向链表实例详解
May 25 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防注
2007/01/15 PHP
php Ajax乱码
2008/04/09 PHP
php开发时容易忘记的一些技术细节
2016/02/03 PHP
PHP函数超时处理方法
2016/02/14 PHP
php 判断IP为有效IP地址的方法
2018/01/28 PHP
PHP中关于php.ini参数优化详解
2020/02/28 PHP
JQuery小知识
2010/10/15 Javascript
基于JQuery的日期联动实现代码
2011/02/24 Javascript
jquery实现多条件筛选特效代码分享
2015/08/28 Javascript
JavaScript知识点整理
2015/12/09 Javascript
JS代码实现table数据分页效果
2016/05/26 Javascript
AngularJS ng-bind-html 指令详解及实例代码
2016/07/30 Javascript
微信js-sdk界面操作接口用法示例
2016/10/12 Javascript
老生常谈js-react组件生命周期
2017/05/02 Javascript
vue.js学习之vue-cli定制脚手架详解
2017/07/02 Javascript
vue与TypeScript集成配置最简教程(推荐)
2017/10/17 Javascript
详解在vue-cli项目中使用mockjs(请求数据删除数据)
2017/10/23 Javascript
微信小程序模板template简单用法示例
2018/12/04 Javascript
Mpvue中使用Vant Weapp组件库的方法步骤
2019/05/16 Javascript
vue 实现用户登录方式的切换功能
2020/04/14 Javascript
[41:52]2018DOTA2亚洲邀请赛3月29日小组赛B组Effect VS Secret
2018/03/30 DOTA
python爬虫教程之爬取百度贴吧并下载的示例
2014/03/07 Python
Django1.7+python 2.78+pycharm配置mysql数据库教程
2014/11/18 Python
浅谈python 四种数值类型(int,long,float,complex)
2016/06/08 Python
在python中bool函数的取值方法
2018/11/01 Python
python获取时间及时间格式转换问题实例代码详解
2018/12/06 Python
python基础知识(一)变量与简单数据类型详解
2019/04/17 Python
关于tensorflow softmax函数用法解析
2020/06/30 Python
Rentalcars.com中国:世界上最大的在线汽车租赁服务
2019/08/22 全球购物
残疾人创业典型事迹
2014/02/01 职场文书
经济职业学院毕业生自荐书
2014/03/17 职场文书
唐山大地震的观后感
2015/06/05 职场文书
酒店工程部的岗位职责汇总大全
2019/10/23 职场文书
Pytest实现setup和teardown的详细使用详解
2021/04/17 Python
Alexa停服!网站排名将何去何从?目前还没有替代品。
2022/04/15 杂记
JS前端可扩展的低代码UI框架Sunmao使用详解
2022/07/23 Javascript