理解爬虫原理

Posted huangzhipeng

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了理解爬虫原理相关的知识,希望对你有一定的参考价值。

1. 简单说明爬虫原理

2. 理解爬虫开发过程

1).简要说明浏览器工作原理;

HTTP协议的工作原理:

a)连接:Web浏览器与Web服务器建立连接,打开一个称为socket(套接字)的虚拟文件,此文件的建立标志着连接建立成功。

b)请求:Web浏览器通过socket向Web服务器提交请求。HTTP的请求一般是GET或POST命令(POST用于FORM参数的传递)。GET命令的格式为:GET 路径/文件名 HTTP/1.0。文件名指出所访问的文件,HTTP/1.0指出Web浏览器使用的HTTP版本。

c)应答:Web浏览器提交请求后,通过HTTP协议传送给Web服务器。Web服务器接到后,进行事务处理,处理结果又通过HTTP传回给Web浏览器,从而在Web浏览器上显示出所请求的页面。

d)送GET命令: GET /mydir/index.html HTTP/1.0。主机名为www.mycomputer.com的Web服务器从它的文档空间中搜索子目录mydir的文件index.html。如果找到该文件,Web服务器把该文件内容传送给相应的Web浏览器。

e)关闭连接:当应答结束后,Web浏览器与Web服务器必须断开,以保证其它Web浏览器能够与Web服务器建立连接。

2).使用 requests 库抓取网站数据;

requests.get(url) 获取校园新闻首页html代码

import requests
res=requests.get(‘http://news.gzcc.cn/html/2019/xiaoyuanxinwen_0322/11042.html‘)
res.encoding=‘utf-8‘
res.text

 

3).了解网页

写一个简单的html文件,包含多个标签,类,id

<html>
<body>
<h1 id="title">Hello</h1>
<a href="#" class="link"> This is link1</a><a href="#link2" class="link" num=2019> This is link2</a>
 <p id="info">This is info
</body>
</html>‘

4).使用 Beautiful Soup 解析网页;

通过BeautifulSoup(html_sample,‘html.parser‘)把上述html文件解析成DOM Tree

select(选择器)定位数据

找出含有特定标签的html元素

找出含有特定类名的html元素

找出含有特定id名的html元素

  技术图片

3.提取一篇校园新闻的标题、发布时间、发布单位

url = ‘http://news.gzcc.cn/html/2019/xiaoyuanxinwen_0320/11029.html

 

 

技术图片

以上是关于理解爬虫原理的主要内容,如果未能解决你的问题,请参考以下文章

理解爬虫原理

理解爬虫原理

理解爬虫原理

理解爬虫原理

《Python爬虫技术:深入理解原理技术与开发》已经出版,欢迎关注

jsoup爬虫的底层原理