Python怎么爬虫博文-成都快上网建站

Python怎么爬虫博文

本篇内容主要讲解“Python怎么爬虫博文”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python怎么爬虫博文”吧!

创新互联建站专注为客户提供全方位的互联网综合服务,包含不限于网站建设、成都网站建设、千阳网络推广、小程序定制开发、千阳网络营销、千阳企业策划、千阳品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联建站为所有大学生创业者提供千阳建站搭建服务,24小时服务热线:18982081108,官方网址:www.cdcxhl.com

一. 大数据及数据挖掘基础

***部分主要简单介绍三个问题:

1、什么是大数据?

2、什么是数据挖掘?

3、大数据和数据挖掘的区别?

1、大数据(Big Data)

大数据(big data)指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力来适应海量、高增长率和多样化的信息资产。

下图是大数据经典的4V特征。

Python怎么爬虫博文

IBM大数据库框架及可视化技术,大数据常用:Hadoop、Spark,现在更多的是实时数据分析,包括淘宝、京东、附近美食等。

Python怎么爬虫博文

下图是大数据的一些应用

Python怎么爬虫博文

Python怎么爬虫博文

说到大数据,就不得不提Hadoop,而说到Hadoop,又不得不提Map-Reduce。

Python怎么爬虫博文

MapReduce是一个软件框架由上千个商用机器组成的大集群上,并以一种可靠的,具有容错能力的方式并行地处理上TB级别的海量数据集。MapReduce的思想是“分而治之”。Mapper负责“分,Reducer负责对map阶段的结果进行汇总。

2、数据挖掘(Data Mining)

数据挖掘(Data Mining):数据库、机器学习、人工智能、统计学的交叉学科。

数据挖掘需要发现有价值的知识,同时最顶端都是具有智慧的去发现知识及有价值的信息。

Python怎么爬虫博文

Python怎么爬虫博文

因为它主要是针对网页数据进行的大数据分析,需要Web Mining分类如下:

Python怎么爬虫博文

Web挖掘主要分为三类:Web日志挖掘、Web内容挖掘、Web结构挖掘。

Python怎么爬虫博文

3、机器学习

讲到机器学习和数据挖掘相关的知识,通常都会补充两幅图片。很形象的表示了计算机智能化与人类传统知识的类比。

Python怎么爬虫博文

Python怎么爬虫博文

二. 安装Python及基础知识

1、安装Python

在开始使用Python编程之前,需要介绍Python的安装过程。python解释器在Linux中可以内置使用安装

步骤如下:

***步:打开Web浏览器并访问官网;

Python怎么爬虫博文

第二步:

在官网首页点击Download链接,进入下载界面,选择Python软件的版本,作者选择下载python 2.7.8,点击“Download”链接。

Python下载地址:

第三步:选择文件下载地址,并下载文件。

第四步:双击下载的“python-2.7.8.msi”软件,并对软件进行安装。

Python怎么爬虫博文

第五步:在Python安装向导中选择默认设置,点击“Next”,选择安装路径,这里设置为默认的安装路径“C:Python27”,点击“Next”按钮,如图所示。

注意1:建议将Python安装在C盘下,通常路径为C:Python27,不要存在中文路径。

Python怎么爬虫博文

在Python安装向导中选择默认设置,点击“Next”,选择安装路径,这里设置为默认的安装路径“C:Python27”,点击“Next”按钮。

Python怎么爬虫博文

安装成功后,如下图所示:

Python怎么爬虫博文

第六步:假设安装一切正常,点击“开始”,选中“程序”,找到安装成功的Python软件,如图所示:

Python怎么爬虫博文

选中上图中第三个图标,即点击“Python (command line)命令行模式”,运行程序输入如下代码:

print 'hello world'

则python命令行模式的解释器会打印输出“hello world”字符串,如下图所示。

Python怎么爬虫博文

选中图中的***个图片,点击“IDLE (Python GUI)”,即运行Python的集成开发环境(Python Integrated Development Environment,IDLE),运行结果如下图。

注意2:建议大家使用IDLE写脚本,完整的代码而不是通过命令行模式。

Python怎么爬虫博文

2、Python基础知识

这里简单入门介绍,主要介绍下条件语句、循环语句、函数等基础知识。

a、函数及运行

这里举个简单的例子。打开IDLE工具->点击栏"File"->New File新建文件->命名为test.py文件,在test文件里添加代码如下:

Python怎么爬虫博文

保存文件。并在test.py文件里点击Run->Run Module,输出结果如下图所示。

Python怎么爬虫博文

b、条件语句

包括单分支、双分支和多分支语句,if-elif-else。

(1).单分支语句

它的基本格式是:

if condition:  statement  statement

需要注意的是Ptthon中if条件语句条件无需圆括号(),条件后面需要添加冒号,它没有花括号{}而是使用TAB实现区分。其中condition条件判断通常有布尔表达式(True|False 0-假|1-真 非0即真)、关系表达式(>= <= == !=)和逻辑运算表达式(and or not)。

(2).双分支语句

它的基本格式是:

if condition:  statement  statement  else:  statement  statement

(3).多分支语句

if多分支由if-elif-else组成,其中elif相当于else if,同时它可以使用多个if的嵌套。具体代码如下所示:

Python怎么爬虫博文

c、while循环语句

while循环语句的基本格式如下:

while condition:  statement  statement  else:  statement  statement

其中判断条件语句condition可以为布尔表达式、关系表达式和逻辑表达式,else可以省略(此处列出为与C语言等区别)。举个例子:

Python怎么爬虫博文

d、for循环

该循环语句的基础格式为:

for target in sequences:  statements

target表示变量名,sequences表示序列,常见类型有list(列表)、tuple(元组)、strings(字符串)和files(文件)。

Python的for没有体现出循环的次数,不像C语言的for(i=0;i<10;i++)中i循环计数,Python的for指每次从序列sequences里面的数据项取值放到target里,取完即结束,取多少次循环多少次。其中in为成员资格运算符,检查一个值是否在序列中。同样可以使用break和continue跳出循环。

下面是文件循环遍历的过程:

Python怎么爬虫博文

e、课堂讲解代码

仅供大家参考:

Python怎么爬虫博文

输出结果如下图所示:

Python怎么爬虫博文

三. 安装PIP及第三方包

接下来需要详解介绍爬虫相关的知识了,这里主要涉及到下面几个知识:

Python怎么爬虫博文

爬虫主要使用Python(字符串|urllib)+Selenium+PhantomJS+BeautifulSoup。

Python怎么爬虫博文

在介绍爬虫及Urllib下载网页或图片之前,先教大家如何使用pip安装第三方的库。

PIP

在介绍介绍它们之前,需要安装PIP软件。“作为Python爱好者,如果不知道easy_install或者pip中的任何一个的话,那么......”。

easy_insall的作用和perl中的cpan,ruby中的gem类似,都提供了在线一键安装模块的傻瓜方便方式,而pip是easy_install的改进版,提供更好的提示信息,删除package等功能。老版本的python中只有easy_install,没有pip。常见的具体用法如下:

Python怎么爬虫博文

***步:下载PIP软件

可以在官网http://pypi.python.org/pypi/pip#downloads下载,同时cd切换到PIP目录,在通过python setup.py install安装。而我采用的是下载pip-Win_1.7.exe进行安装

第二步:安装PIP软件

Python怎么爬虫博文

Python怎么爬虫博文

当提示"pip and virtualenv installed"表示安装成功,那怎么测试PIP安装成功呢?

第三步:配置环境变量

此时在cmd中输入pip指令会提示错误“不是内部或外部命令”。

Python怎么爬虫博文

注意:两种解决方法,一种是通过cd ..去到Srcipts环境进行安装,pip install...

Python怎么爬虫博文

方法二:另一种配置Path路径。

需要添加path环境变量。PIP安装完成后,会在Python安装目录下添加pythonScripts目录,即在python安装目录的Scripts目录下,将此目录加入环境变量中即可!过程如下:

Python怎么爬虫博文

Python怎么爬虫博文

第四步:使用PIP命令

下面在CMD中使用PIP命令,“pip list outdate”列举Python安装库的版本信息。

Python怎么爬虫博文

注意:安装成功后,会在Python环境中增加Scripts文件夹,包括easy_install和pip。

Python怎么爬虫博文

PIP安装过程中可能出现各种问题,一种解决方法是去到python路径,通过python set_up.py install安装;另一种是配置Path环境比例。

课堂重点知识:

***节课主要想让大家体会下Python网络爬虫的过程及示例。需要安装的第三方库主要包括三个:

pip install httplib2  pip install urllib  pip install selenium

Python怎么爬虫博文

在安装过程中,如果pip install urllib报错,是因为httplib2包含了,可直接用。

Python怎么爬虫博文

注意:如果pip安装报错ascii编码问题,需要把计算机名称从中文修改为英文名。

四. Urllib下载网页及图片

在使用pip install urllib或pip install urllib2后,下面这段代码是下载网页。

Python怎么爬虫博文

首先我们调用的是urllib2库里面的urlopen方法,传入一个URL,这个网址是百度首页,协议是HTTP协议,当然你也可以把HTTP换做FTP、FILE、HTTPS 等等,只是代表了一种访问控制协议,urlopen一般接受三个参数,它的参数如下:

Python怎么爬虫博文

***个参数url即为URL,第二个参数data是访问URL时要传送的数据,第三个timeout是设置超时时间。

第二三个参数是可以不传送的,data默认为空None,timeout默认为 socket._GLOBAL_DEFAULT_TIMEOUT。

***个参数URL是必须要传送的,在这个例子里面我们传送了百度的URL,执行urlopen方法之后,返回一个response对象,返回信息便保存在这里面。

Python怎么爬虫博文

response对象有一个read方法,可以返回获取到的网页内容。

获取的网页本地保存为"baidu.html",通过浏览器打开如下图所示:

Python怎么爬虫博文

然后是需要下载图片,这里需要学会找到图片的URL,如下图百度的LOGO,可以通过浏览器右键"审查元素"或"检查"来进行定位。

Python怎么爬虫博文

定位URL后,再通过函数urlretrieve()进行下载。

Python怎么爬虫博文

重点知识:

urllib.urlopen(url[, data[, proxies]]) :创建一个表示远程url的类文件对象,然后像本地文件一样操作这个类文件对象来获取远程数据。

urlretrieve方法直接将远程数据下载到本地。

如果需要显示进度条,则使用下面这段代码:

Python怎么爬虫博文

五. HTML网页基础知识及审查元素

HTML DOM是HTML Document Object Model(文档对象模型)的缩写,HTML DOM则是专门适用于HTML/XHTML的文档对象模型。熟悉软件开发的人员可以将HTML DOM理解为网页的API。它将网页中的各个元素都看作一个个对象,从而使网页中的元素也可以被计算机语言获取或者编辑。

Python怎么爬虫博文

DOM是以层次结构组织的节点或信息片断的集合。这个层次结构允许开发人员在树中导航寻找特定信息。分析该结构通常需要加载整个文档和构造层次结构,然后才能做任何工作。由于它是基于信息层次的,因而 DOM 被认为是基于树或基于对象的。

Python怎么爬虫博文

HTML DOM 定义了访问和操作HTML文档的标准方法。 HTML DOM 把 HTML 文档呈现为带有元素、属性和文本的树结构(节点树)。它们都是一个节点(Node),就像公司的组织结构图一样。 我们现在从另一个角度来审视源代码,first.html的源码如下:

Python怎么爬虫博文

这个例子的***个元素就是元素,在这个元素的起始标签和终止标签之间,又有几个标签分别起始和闭合,包括、和<body>。<head>和<body>标签是直接被<html>元素包含的,而<title>标签则包含在<head>标签内。要描述一个HTML网页的这种多层结构,用树来进行类比是***的方式。树形结构如下图所示:</p><p><img src="/upload/otherpic51/434669.jpg" alt="Python怎么爬虫博文"></p><p>重点:</p><p>在网络爬虫中,通常需要结合浏览器来定位元素,浏览器右键通常包括两个重要的功能:查看源代码和审查或检查元素。</p><p><img src="/upload/otherpic51/434672.jpg" alt="Python怎么爬虫博文"></p><p>通过审查元素,可以定位到需要爬取图片或网页的HTML源文件,通常是table或div的布局,这些HTML标签通常是成对出现的,如<html></html>、<div></div>等;同时会包括一些属性id、name、class来指定该标签。如:</p><pre><div id="content" name="n1" class="cc">....</div></pre><p><img src="/upload/otherpic51/434673.jpg" alt="Python怎么爬虫博文"></p><p><strong>六. 安装Selenium及网页简单爬取</strong></p><p>Selenium用于Web应用程序测试的工具,模拟浏览器用户操作,通过Locating Elements 定位元素。安装过程如下图所示,通过pip install selenium安装。</p><p>注意:需要cd去到Scripts目录进行安装。</p><p><img src="/upload/otherpic51/434675.jpg" alt="Python怎么爬虫博文"></p><p><img src="/upload/otherpic51/434676.jpg" alt="Python怎么爬虫博文"></p><p>selenium结合浏览器定位的基本函数包括:</p><p><img src="/upload/otherpic51/434677.jpg" alt="Python怎么爬虫博文"></p><p>***个基于Selenium爬虫的代码,通过调用Firefox浏览器:</p><p><img src="/upload/otherpic51/434678.jpg" alt="Python怎么爬虫博文"></p><p>输出如下图所示:</p><p><img src="/upload/otherpic51/434679.jpg" alt="Python怎么爬虫博文"></p><p>到此,相信大家对“Python怎么爬虫博文”有了更深的了解,不妨来实际操作一番吧!这里是创新互联网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!</p> <br> 网站标题:Python怎么爬虫博文 <br> 网址分享:<a href="http://kswjz.com/article/gciehc.html">http://kswjz.com/article/gciehc.html</a> </div> <div class="view-qrocde cl"> <div class="m z"><img src="/Public/Home/images/ew.jpg"/></div> <div class="text"> <h6>扫二维码与项目经理沟通</h6> <p>我们在微信上24小时期待你的声音</p> <p>解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流</p> </div> </div> <div class="othernews cl"> <h3>其他资讯</h3> <ul> <li><a href="/article/esdcsh.html">抖音代运营好的机构有哪些</a></li><li><a href="/article/esdsoe.html">抖音代运营打造ip</a></li><li><a href="/article/esdchj.html">武侯短视频运营总监介绍</a></li><li><a href="/article/esdsos.html">汉口短视频代运营怎么投放效果好</a></li><li><a href="/article/esdsds.html">抖音代运营可信么吗?抖音代运营有什么优势?怎么收费的?</a></li> </ul> </div> </div> </div> <div class="sidebar"> <div class="tuijian"> <a href="#"> <h2 class="cl"><span>行业动态</span></h2> <h3>企业网站建设的重要性!</h3> <p>现在虽然是移动互联网时代,但企业网站依然重要,包含PC站点,移动站。可以说企业网站关系企业的未来发展和前途,尤其对中小企业更是如此,一些中小企业老板,对自己的名片很在乎,因为这是个门面。...</p> </a> </div> <div class="ser sidesub"> <h2>服务项目</h2> <ul class="ebox"> <li class="sub sub-1"> <div> <h3>网站建设</h3> <p></p> <a class="btn" href="/serve/website/">查看详情</a> </div> </li> <li class="sub sub-1"> <div> <h3>移动端/APP</h3> <p></p> <a class="btn" href="/serve/moblie/">查看详情</a> </div> </li> <li class="sub sub-1"> <div> <h3>微信/小程序</h3> <p></p> <a class="btn" href="/serve/small/">查看详情</a> </div> </li> <li class="sub sub-1"> <div> <h3>技术支持</h3> <p></p> <a class="btn" href="/serve/tech/">查看详情</a> </div> </li> <li class="sub sub-1"> <div> <h3>其它服务</h3> <p></p> <a class="btn" href="/serve/othe/">查看详情</a> </div> </li> <li class="sub sub-5"> <div> <h3>更多服务项目</h3> <p> <a>用我们的专业和诚信赢得您的信赖,从PC到移动互联网均有您想要的服务!</a></p> <a class="btn" href="/serve/">获取更多</a> </div> </li> </ul> </div> <div class="contact" id="fix"> <h2 class="cl"> <span>联系吧</span> <a href="https://map.baidu.com/" class="ditu" rel="nofollow" target="_blank">在百度地图上找到我们</a> </h2> <h3>电话:13518219792</h3> <p>如遇占线或暂未接听请拨:136xxx98888</p> <div class="qq"> <a href="//wpa.qq.com/msgrd?v=3&uin=244261566&site=qq&menu=yes" rel="nofollow" target="_blank">业务咨询</a> <a href="//wpa.qq.com/msgrd?v=3&uin=244261566&site=qq&menu=yes" rel="nofollow" target="_blank">技术咨询</a> <a href="//wpa.qq.com/msgrd?v=3&uin=244261566&site=qq&menu=yes" rel="nofollow" target="_blank">售后服务</a> </div> </div> </div> <script> //固定滚动 (function () { var oDiv = document.getElementById("fix"); var H = 120, iE6; var Y = oDiv; while (Y) { H += Y.offsetTop; Y = Y.offsetParent }; iE6 = window.ActiveXObject && !window.XMLHttpRequest; if (!iE6) { window.onscroll = function () { var s = document.body.scrollTop || document.documentElement.scrollTop; if (s > H) { oDiv.className = "contact fixed"; if (iE6) { oDiv.style.top = (s - H) + "px"; } } else { oDiv.className = "contact "; } }; } })(); </script> </div> <div class="footer"> <div class="wp"> <div class="wpss cl"> <dl class="about"> <dt>网站设计</dt> <dd><a href="http://www.scyanting.com/" target="_blank" title="盐亭网站设计">盐亭网站设计</a></dd><dd><a href="http://www.cdxwcx.cn/sheji/" target="_blank" title="成都网站设计">成都网站设计</a></dd><dd><a href="http://m.cdcxhl.cn/dingzhi/" target="_blank" title="定制网站设计">定制网站设计</a></dd><dd><a href="http://www.wjzwz.com/" target="_blank" title="温江网站设计">温江网站设计</a></dd> </dl> <dl class="about"> <dt>网站制作</dt> <dd><a href="http://chengdu.cdxwcx.cn/wangzhan/" target="_blank" title="手机网站制作">手机网站制作</a></dd><dd><a href="http://m.cdcxhl.cn/mobile/" target="_blank" title="手机网站制作">手机网站制作</a></dd><dd><a href="http://www.dzwzjz.com/" target="_blank" title="达州网站制作">达州网站制作</a></dd><dd><a href="http://www.cdxwcx.cn/" target="_blank" title="成都网站制作公司">成都网站制作公司</a></dd> </dl> <dl class="contact"> <dt>联系我们</dt> <dd>电话:13518219792</dd> <dd>邮箱:631063699@qq.com</dd> <dd>地址:成都青羊区锦天国际1002号</dd> <dd>网址:www.kswjz.com</dd> </dl> <dl class="about" style="margin-left:50px;width:235px;"> <dt>网站建设</dt> <dd><a href="http://www.ncwzjz.com/" target="_blank" title="南充网站建设">南充网站建设</a></dd><dd><a href="http://www.scgulin.cn/" target="_blank" title="古蔺网站建设">古蔺网站建设</a></dd><dd><a href="https://www.cdcxhl.com/mianfei/jianshe/chengdu.html" target="_blank" title="成都免费网站建设">成都免费网站建设</a></dd><dd><a href="http://www.cqcxhl.com/" target="_blank" title="重庆企业网站建设">重庆企业网站建设</a></dd> </dl> <dl class="flow"> <dt></dt> <div class="ma cl"> <div class="m"> <img src="/Public/Home/images/ew.jpg" /> <p>微信二维码</p> </div> </div> </dl> </div> </div> <div class="footer-link wp"> <ul class="wpss cl"> <li class="fisrt">友情链接</li> <li><a href="http://www.hzjierui.cn/" title="彭州网站建设" target="_blank">彭州网站建设</a></li><li><a href="http://www.cdhuace.com/faguangzi/wbfgz.html" title="无边发光字制作" target="_blank">无边发光字制作</a></li><li><a href="http://www.cdkjz.cn/fangan/door/" title="成都门户网站建设设计方案" target="_blank">成都门户网站建设设计方案</a></li><li><a href="http://chengdu.cdcxhl.com/xcx/" title="微信小程序开发" target="_blank">微信小程序开发</a></li><li><a href="http://www.sczitong.com/" title="彩乐斯贸易" target="_blank">彩乐斯贸易</a></li><li><a href="http://www.jinhuajc.com/" title="保温橡塑管" target="_blank">保温橡塑管</a></li><li><a href="http://www.cdsjymy.cn/" title="路面机械及配件" target="_blank">路面机械及配件</a></li><li><a href="https://www.cdcxhl.com/tuoguan.html" title="四川服务器托管" target="_blank">四川服务器托管</a></li><li><a href="http://www.cxjianzhan.com/" title="成都网站制作" target="_blank">成都网站制作</a></li><li><a href="http://www.cxhljz.cn/app/" title="Android开发" target="_blank">Android开发</a></li> </ul> </div> </div> <div class="bot-footer"> <div class="wp"> <p class="wpss"> <em>Copyright © 2002-2023 www.kswjz.com 快上网建站品牌 QQ:244261566 版权所有</em> <em>备案号:<a href="http://beian.miit.gov.cn/" rel="external nofollow">蜀ICP备19037934号</a></em> </p> <p class="wpss" style="line-height:30px !important;"> </p> </div> </div> <div class="footer-kefu"> <ul> <li class="qq"><a href="https://wpa.qq.com/msgrd?v=3&uin=244261566&site=qq&menu=yes"><em></em>在线咨询</a> </li> <li class="tel"><a href="tel:13518219792" target="_blank"><em></em>13518219792</a></li> <li class="wx"> <em></em> <div class="code"> <img src="/Public/Home/images/ew.jpg" /> <p>微信二维码</p> </div> </li> <li class="m"> <em></em> <div class="code"> <img src="/Public/Home/images/ew.jpg" /> <p>移动版官网</p> </div> </li> <li class="top"><em></em></li> </ul> </div> <script src="/Public/Home/js/all.js"></script> </body> </html> <script> $(".cont img").each(function(){ var src = $(this).attr("src"); //获取图片地址 var str=new RegExp("http"); var result=str.test(src); if(result==false){ var url = "https://www.cdcxhl.com"+src; //绝对路径 $(this).attr("src",url); } }); window.onload=function(){ document.oncontextmenu=function(){ return false; } } </script>