python爬虫简单版

关于爬虫的合法性

关于爬虫的合法性几乎每一个网站都有一个名为 robots.txt 的文档,当然也有部分网站没有设定 robots.txt。对于没有设定 robots.txt 的网站可以通过网络爬虫获取没有口令加密的数据,也就是该网站所有页面数据都可以爬取。如果网站有 robots.txt 文档,就要判断是否有禁止访客获取的数据。

以淘宝网为例,在浏览器中访问 https://www.taobao.com/robots.txt。
淘宝网允许部分爬虫访问它的部分路径,而对于没有得到允许的用户,则全部禁止爬取,代码如下:

User-Agent:*
Disallow:/

使用 requests 库请求网站

安装 requests 库
使用conda命令或pip命令都可以实现安装(自行百度)

爬虫的基本原理

爬虫的基本原理网页请求的过程分为两个环节:
1.Request (请求):每一个展示在用户面前的网页都必须经过这一步,也就是向服务器发送访问请求。
2.Response(响应):服务器在接收到用户的请求后,会验证请求的有效性,然后向用户(客户端)发送响应的内容,客户端接收服务器响应的内容,将内容展示出来,就是我们所熟悉的网页请求,如图 所示。
python爬虫简单版_第1张图片
网页请求的方式:GET:最常见的方式,一般用于获取或者查询资源信息,也是大多数网站使用的方式,响应速度快。
使用 GET 方式抓取数据复制任意一条首页首条新闻的标题,在源码页面按【Ctrl+F】组合键调出搜索框,将标题粘贴在搜索框中,然后按【Enter】键。

import requests        #导入requests包
url = '网站地址'
strhtml = requests.get(url)        #Get方式获取网页数据
print(strhtml.text)

加载库使用的语句是 import+库的名字。在上述过程中,加载 requests 库的语句是:import requests。

用 GET 方式获取数据需要调用 requests 库中的 get 方法,使用方法是在 requests 后输入英文点号,如下所示:

requests.get

将获取到的数据存到 strhtml 变量中,代码如下:

strhtml = request.get(url)

这个时候 strhtml 是一个 URL 对象,它代表整个网页,但此时只需要网页中的源码,下面的语句表示网页源码:

strhtml.text

python爬虫简单版_第2张图片

你可能感兴趣的:(笔记)