赞
踩
&emap;&emdp;学完pygame之后,就迫不及待想学python的更多应用了,一直对网络爬虫这个词很好奇,它究竟是怎样爬取网页信息的呢,于是小白就启动学习爬虫的计划啦。
百度百科对网络爬虫的定义是:一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。简单地说,网络爬虫就是我们通过程序模拟浏览器访问网页来大批量地抓取网页信息。
我们可以通过爬虫获取网页的HTML文件,再转化化为可阅读的文本/图片,也包括视频等信息。与直接通过浏览器下载保存的最大区别是,网络爬虫可以批量下载保存。
过程:发送请求+响应请求+解析HTML
当我们再搜索框输入要查询的内容时,我们点击百度,一会儿我们就可以得到需要的页面,这个过程其实分为以下几步:
HTTP请求:浏览器发送http请求的过程
HTTP 和 HTTPS协议:
URL:
解释:统一资源定位符(Uniform Resource Locator),又叫做网页地址,是互联网上标准的资源的地址,它指出文件的位置以及浏览器怎么处理它。
组成:格式: http://host[:port][path]
实例:http://www.baidu.com 、http://115.157.200.135/duty
HTTP对资源的操作:
方法 | 说明 |
---|---|
GET | 请求获取URL位置的资源 |
HEAD | 请求获取URL位置资源的头部信息 |
POST | 请求向URL位置对的资源后附加新的数据 |
PUT | 请求向URL位置储存一个资源,覆盖原来的资源 |
PATCH | 请求局部更新URL位置的资源,即改变部分内容 |
DELETE | 请求删除URL位置处的资源 |
Python爬虫学习主要包含3个模块:抓取,分析,存储
step1:抓取
我们可以模拟用户访问浏览器,直接从对方服务器获取数据,可以使用requests包、urllib2包和htplib2等包榜知我们抓取数据。使用下面的代码,我们可以抓取百度搜索的html
内容:
import requests
url = "https://www.baidu.com"
response = requests.get(url)
content = requests.get(url).content
print("response headers:", response.headers)
print("content:", content)
反爬:如果我们遇到了反爬机制,我们可以使用代理、设置爬取数据的频率、加上浏览器访问网页必要的参数模拟浏览器访问来处理它。
速度:在爬取信息时,如果数据量较大,我们希望速度快一点时,就可以使用多线程抓取。
step2:分析
分析就是将html文件中的内容解析处我们能够阅读的文本/图片。
step3:存储
分析出内容后就是存储了,我们可以存入文本文件,也可以存入MySQL或MongDB数据库。
常用库:学习爬虫时,我们可以使用很多库来辅助我们,常见的如下:
网络库:urllib、requests、urllib3、
解析器:lxml、beautifulsp、pyquery、xhtml2pdf
爬虫入门相关知识介绍结束啦,学习了很多博客,有了一些了解,还有很多东西没学,加油
第一篇python爬虫笔记完结 cheers ??
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。