前言

根据上一篇 1,Python爬虫环境的安装我们已经在本地安装好了Python环境,那么这一篇就开始学习如何用Python来爬虫!

环境:操作系统:Windows10

IDE:   PyCharm2018.1

解释器:python3.6

1,只需短短4行

或许Python爬虫给大家的感觉就是比较高级,比较牛逼的一项技术,而其实呢,它的核心代码就只有以下几行!(至少对于初学者来说,只需要知道它如何使用)

 import requests    # 导入requests模块。如果报错,就是没有安装该模块;安装:鼠标点击红色部分->【ALT+回车】->回车。或在命令行使用pip install requests安装。

 url = "http://www.baidu.com"   # 要爬取网站的网址,一定要加http://
page = requests.get(url) # 模拟请求(与浏览器原理相同)
print(page.text) # 输出网站的源码(HTML代码)

 

2,对比

一开始大家(包括我自己)接触比较多的可能是urllib和urllib3;python2用的是urllib和urllib2,在python3中已经没有urllib2了,所以在看教程的时候一定要看清是python2还是python3。

其实用哪个库都没有太大关系,因为他们其实都是在底层实现了HTTP协议,然后自己再把接口封装以下,理解了原理其实都是差不多的;但是推荐大家使用requests库(我看很多大牛都推荐这个),他是个第三方库(不是python自家的),所以需要安装,代码中给出了安装方法。这个库给我的感觉就是使用起来更加简单,可读性很好,比较符合Python的风格,大牛们推荐他可能还有其他原因,有待学习!

3,解析

所谓爬虫,其实也就是在互联网这张大网中筛选我们需要的信息。上面的代码只是把整个页面的内容下载下来了,并没有什么实际作用。而我们实际需要的是其中的一些图片或者某些文字,那就需要对这些下载下来的内容进行解析了,最简单粗暴的方法是使用正则(re)表达式来匹配(这是必备的,网上有很多学习教程);而更好的方法是先使用xpath(一种解析html文档的语法)获取想要的内容,然后再用re处理获取的内容,使内容更符合我们需要。

4,要学什么

上面是让大家更好地理解爬虫,和基本步骤;下面就是初学需要学些什么东西:

爬虫三部曲:

1,下载页面:使用requests下载网站页面;学习requests模块的基本使用。

2,解析页面:在下载下来的页面中获取想要的信息;学习lxml模块,re模块,xpath语法和re语法的基本使用。

3,保存信息:把解析后的信息保存到本地(先学会保存到Excel表);学习xlwt模块。

2,简单的Python爬虫的更多相关文章

  1. 一个简单的python爬虫程序

    python|网络爬虫 概述 这是一个简单的python爬虫程序,仅用作技术学习与交流,主要是通过一个简单的实际案例来对网络爬虫有个基础的认识. 什么是网络爬虫 简单的讲,网络爬虫就是模拟人访问web ...

  2. 一个简单的python爬虫,爬取知乎

    一个简单的python爬虫,爬取知乎 主要实现 爬取一个收藏夹 里 所有问题答案下的 图片 文字信息暂未收录,可自行实现,比图片更简单 具体代码里有详细注释,请自行阅读 项目源码: # -*- cod ...

  3. 简单的python爬虫教程:批量爬取图片

    python编程语言,可以说是新型语言,也是这两年来发展比较快的一种语言,而且不管是少儿还是成年人都可以学习这个新型编程语言,今天南京小码王python培训机构变为大家分享了一个python爬虫教程. ...

  4. 简单的python爬虫--爬取Taobao淘女郎信息

    最近在学Python的爬虫,顺便就练习了一下爬取淘宝上的淘女郎信息:手法简单,由于淘宝网站本上做了很多的防爬措施,应此效果不太好! 爬虫的入口:https://mm.taobao.com/json/r ...

  5. 【Python学习笔记三】一个简单的python爬虫

    这里写爬虫用的requests插件 1.一般那3.x版本的python安装后都带有相应的安装文件,目录在python安装目录的Scripts中,如下:   2.将scripts的目录配置到环境变量pa ...

  6. 一个简单的python爬虫,以豆瓣妹子“http://www.dbmeizi.com/category/2?p= ”为例

    本想抓取网易摄影上的图,但发现查看html源代码时找不到图片的url,但firebug却能定位得到.(不知道为什么???) 目标是抓取前50页的爆乳图,代码如下: import urllib2,url ...

  7. 一个简单的python爬虫(转)

    # -*- coding: utf-8 -*- #--------------------------------------- # 程序:百度贴吧爬虫 # 版本:0.1 # 作者:why # 日期: ...

  8. 一个简单的Python爬虫

    写了一个抓taobao图片的爬虫,全是用if,for,while写的,比较简陋,入门作品. 从网页http://mm.taobao.com/json/request_top_list.htm?type ...

  9. 简单的python爬虫实例

    目标网站:https://www.quanjing.com/category/1286521/2.html 爬取搜索出来的所有“中东人”的图片: 先看一下源代码,找到存放图片链接的地方,在源代码最下面 ...

随机推荐

  1. 2.Java程序运行机制

    1.编译型:compile,把所有东西翻译好,若有更新需要重新全部翻译.执行速度够快,对操作系统要求比较低.开发操作系统时用到编译型语言,例如c/c++...运行时需编译整个程序 2.解释性:运行一个 ...

  2. 关于checkbox取值的问题

    今天,在做一个小界面的时候,要用到checkbox来判断用户是否选择记住密码. 本来我想这个不是挺简单吗,直接用jquery获取checkbox的checked属性值好了,如下: var rememb ...

  3. 技术交流群和CSDN免费下载服务

    1.最近很多新读者的关注,如果还没认识我或不清楚本公号能为你带来什么,可点击阅读你.我 2.本篇文章只为告诉新读者与不知道这些福利的旧读者 本公号其中为你提供的两大价值之处: 一个好的学习环境:技术交 ...

  4. linux C++类中成员变量和函数的使用

    1.undefined reference to XXX 问题原因 1)XXX所在的so库等未指定 2)XXX在类中实现的时候没有加上类::函数的格式 2. was not declared in t ...

  5. 19_08_26校内训练[Max]

    题意 求$max_{l \leq r}{\{min{\{a_l,a_{l+1},...,a_r\}}*(r-l+1)\}}$ 思考 分治,考虑一个区间跨过某个点的贡献即可. 代码 #include&l ...

  6. kafka for centos7

    https://blog.csdn.net/wqh8522/article/details/79163467

  7. tcpdump用法说明

    tcpdump采用命令行方式对接口的数据包进行筛选抓取,其丰富特性表现在灵活的表达式上. 不带任何选项的tcpdump,默认会抓取第一个网络接口,且只有将tcpdump进程终止才会停止抓包. 例如: ...

  8. SpringBoot系列专栏

    学会使用SpringBoot能够极大地提升Spring应用的开发效率,可以说是目前开发应用Java必需掌握的工具之一,而且SpringBoot也是微服务应用的基础,只有学会了SpringBoot,你才 ...

  9. learn more ,study less(二):整体性学习技术(下)

    随意信息的处理 随意信息,或者内容太多.太复杂的信息,都不容易理解,它们需要不同的技术.假 如你发现联想法不能帮助你理解材料,或者需要花费的时间太长,这时候处理随意信息的方 法就很适合了. 这些处理随 ...

  10. DirectX11 With Windows SDK--29 计算着色器:内存模型、线程同步;实现顺序无关透明度(OIT)

    前言 由于透明混合在不同的绘制顺序下结果会不同,这就要求绘制前要对物体进行排序,然后再从后往前渲染.但即便是仅渲染一个物体(如上一章的水波),也会出现透明绘制顺序不对的情况,普通的绘制是无法避免的.如 ...