当前位置: 首页 > 问答 > Python编程 > 问答详情

爬虫技术是什么意思?

10月26日 08:44570人阅读
宋老师 Python编程

相信很多小伙伴刚接触网络爬虫这个词语,脑海中一点概念也没有,其实从字面上我们稍微能够揣摩到一点,这需要去“接触”内容,由此,那就可以展开本章话题。
首先将网络爬虫技术分解成四个部分:
1、获取网页数据
2、解析网页数据
3、存储网页数据
4、分析网页数据
步骤一、获取网页数据
在python程序里面,可以通过获取网页中的源代码实现,进而获得网页中的数据。
查看网址的源代码查看方法:
使用google浏览器,右键选择检查,查看需要爬取的网址源代码。
具体如下:
根据下图可得知,在Network选项卡里面,点击第三个条目,也就是http://www.baidu.com,看到源代码。
在本图中,第一部分是General,包括了网址的基本信息,比如状态 200等,第二部分是Response Headers,包括了请求的应答信息,还有body部分,比如Set-Cookie,Server等。第三部分是Request headers,包含了服务器使用的附加信息,比如Cookie,User-Agent等内容。

上面的网页源代码,在python语言中,我们只需要使用urllibrequests等库实现即可,具体如下。这里特别说明一些,requestsurllib更加方便、快捷。一旦学会requests库,肯定会爱不释手。

import urllib.request
import socket
from urllib import error
 
try:
    response = urllib.request.urlopen('https://www.python.org')
 
    print(response.status)
    print(response.read().decode('utf-8'))
 
except error.HTTPError as e:
    print(e.reason,e.code,e.headers,sep='n')
except error.URLError as e:
    print(e.reason)
else:
print('Request Successfully')

步骤二、解析网页数据
上述我们获得了网页的源代码,也就是数据。然后就是解析里面的数据,为我们的分析使用。常见的方法有很多,比如正则表达式、xpath解析等。
在Python语言中,我们经常使用Beautiful Soup、pyquery、lxml等库,可以高效的从中获取网页信息,如节点的属性、文本值等。
Beautiful Soup库是解析、遍历、维护“标签树”的功能库,对应一个HTML/XML文档的全部内容。安装方法非常简单,如下:

#安装方法
pips install beautifulsoup4
 
#验证方法
from bs4 import BeautifulSoup

步骤三、存储网页数据
解析完数据以后,就可以保存起来。如果不是很多,可以考虑保存在txt 文本、csv文本或者json文本等,如果爬取的数据条数较多,我们可以考虑将其存储到数据库中。因此,我们需要学会 MySql、MongoDB、SqlLite的用法。更加深入的,可以学习数据库的查询优化。
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于ECMAScript的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C、C++、Java、JavaScript、Perl、Python等)。这些特性使JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成(一般用于提升网络传输速率)。
具体使用方法:

with open('douban_movie_250.csv','a',encoding='utf-8') as f: f.write(json.dumps(content,ensure_ascii=False)+'n')

步骤四、分析网页数据
爬虫的目的是分析网页数据,进的得到我们想要的结论。在 python数据分析中,我们可以使用使用第三步保存的数据直接分析,主要使用的库如下:NumPy、Pandas、 Matplotlib 三个库。

NumPy :它是高性能科学计算和数据分析的基础包。
Pandas : 基于 NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。它可以算得上作弊工具。
Matplotlib:Python中最著名的绘图系统Python中最著名的绘图系统。它可以制作出散点图,折线图,条形图,直方图,饼状图,箱形图散点图,折线图,条形图,直方图,饼状图,箱形图等。

以上是根据网络爬虫整理的一套数据流程,大家根据以上内容,很容易弄清楚这部分内容,更多python实用知识,点击进入PyThon学习网教学中心

来自标签:

职业技能申请领取
您的姓名
您的电话
意向课程
点击领取

环球青藤

官方QQ

扫描上方二维码或点击一键加群,免费领取大礼包,加群暗号:青藤。 一键加群

问答来自

宋老师 Python编程
好评率85% 浏览570

相关问题

Python中字符串与二进制如何相互转换?
张老师 Python编程
Python中字符串如何查找?
许老师 Python编程
学Python编程有什么作用?
梦老师 Python编程
课程咨询 学员服务 公众号

扫描关注微信公众号

APP

扫描下载APP

返回顶部