Python培训
美国上市Python培训机构

400-111-8989

热门课程

Python爬虫程序要用到哪些知识和技术?

  • 时间:2017-07-24 17:38
  • 发布:Python培训
  • 来源:问答

相信喜欢动手的粉丝们已经在自己的电脑上跑过一遍这个程序了。但是对于初步接触python的人来说,一上来就搞一个python的爬虫,也的确会让自己摸不着头脑,但是如果我们一直写那种知识点型的文章的话,你们也会觉得只有知识点不过瘾,综合考虑后,还是觉得上这种案例好,哪怕我需要多写几篇文章才能解释清楚一个案例。

没有阅读过前面来两篇文章的同学,建议点进去阅读一下,以便于理解本文内容。

前面有点废话了,下面说正经的,这个用来从百度地图抓取某个区域边缘坐标点的爬虫程序用到了哪些知识点和技术呢?我一一列举出来:

1.对网页结构需要有一个基本的了解和认知。

我们平时上网浏览网页,信息展现在浏览器里面的页面中,但我们用爬虫要抓取的信息是放在网页源代码里面的。(图1为我们看到的页面,图2 为页面对应的网页源代码)

在浏览器中使用快捷键F12来调出该界面,这个界面称为开发者模式

2.知道如何去找到我们需要的信息在网页源代码的那个位置。

一般来说信息可能直接存在于网页的html页面中,但是有一些动态加载的信息可能存在于js页面中。有一些网站,它的数据价值比较高,总会有竞争对手去抓取它的数据,所以它就会有比较厉害的反抓取措施,一般新手很难应付这种反抓取措施。一般的静态网页要求你对浏览器的开发者模式很熟悉,能够利用这个工具去定位自己需要的信息在网页源代码中的那个位置,网上有相关教程,搜一下就能找到,更复杂的动态网页,就需要你对动态加载的网页有点研究才行。这些知识点和技能,都是需要自己动手去尝试才能学会的。

3.知道用什么python程序库去完成网页源代码的下载,解析,数据提取,存储。

python是一门很简单的编程语言,一方面是因为python的语法简洁,另一方面是因为在python社区,已经有很多很多的人为我们贡献了很多很多开源的程序库,我们在编写程序的时候,直接调用这些程序库,就能够省下很多很多工作量。比如在我分享的这个爬虫项目中,我使用了如下这些程序库:

# 导入需要使用的Python库import requestsimport jsonimport reimport pandas as pd

它们的作用见如下所述:

requests :根据url将网页源代码下载下来

json :用来将网页中的js内容转换为Python字典类型

re :正则表达式库,用于提取网页中满足一定规律的内容(比如本案例中的经纬度信息)

pandas :Python中操作结构化数据的程序库,能够实现几乎所有Excel的数据操作功能,本例中,用来结构化经纬度数据

4. 最后一点就是能够把这些知识和技术整合起来写出能够实现自己爬取数据需求的代码的能力了

这也是为什么我现在倾向于向大家分享具体的案例,而不是知识点。不过知识和技能只有内化吸收,才能成为自己的。我们最终的目的是为了使现实中的问题得到解决,因此在接触新技术,新的知识点后,要有意识的去整合它们,只有这样,才能提高自己解决实际问题的能力。

上一篇:为什么说”人生苦短,我用python“
下一篇:如何自学Python?

想学Python有没有必要报培训班?

Python这么简单还用参加python培训班学吗?

零基础学Python编程开发难度大吗?从哪学起?

python培训学费多少钱?学python课程价格?

选择城市和中心
贵州省

广西省

海南省