python 爬虫快速入门,python爬虫怎么做?

python 爬虫快速入门目录

python 爬虫快速入门

python爬虫怎么做?

如何入门 Python 爬虫

全方面的掌握Requests库的使用【python爬虫入门进阶】(02)

python 爬虫快速入门

    1. 安装必要的库

    打开终端或命令提示符,并输入以下命令安装这些库:

    ```shell

    pip install requests beautifulsoup4

    ```

    2. 导入必要的库

    在Python脚本中导入所需的库:

    ```python

    import requests

    from bs4 import BeautifulSoup

    ```

python爬虫怎么做?

大到各类搜索引擎,小到日常数据采集,都离不开网络爬虫。

爬虫的基本原理很简单,遍历网络中网页,抓取感兴趣的数据内容。

这篇文章会从零开始介绍如何编写一个网络爬虫抓取数据,然后会一步步逐渐完善爬虫的抓取功能。

工具安装

我们需要安装python,python的requests和BeautifulSoup库。

我们用Requests库用抓取网页的内容,使用BeautifulSoup库来从网页中提取数据。

安装python

运行pipinstallrequests

运行pipinstallBeautifulSoup

抓取网页

完成必要工具安装后,我们正式开始编写我们的爬虫。

我们的第一个任务是要抓取所有豆瓣上的图书信息。

我们以/subject/26986954/为例,首先看看开如何抓取网页的内容。

使用python的requests提供的get()方法我们可以非常简单的获取的指定网页的内容,代码如下:

提取内容

抓取到网页的内容后,我们要做的就是提取出我们想要的内容。

在我们的第一个例子中,我们只需要提取书名。

首先我们导入BeautifulSoup库,使用BeautifulSoup我们可以非常简单的提取网页的特定内容。

连续抓取网页

到目前为止,我们已经可以抓取单个网页的内容了,现在让我们看看如何抓取整个网站的内容。

通过以上几步我们就可以写出一个最原始的爬虫。

在理解了爬虫原理的基础上,我们可以进一步对爬虫进行完善。

写过一个系列关于爬虫的文章:/i6567289381185389064/。

感兴趣的可以前往查看。

Python基本环境的搭建,爬虫的基本原理以及爬虫的原型

Python爬虫入门(第1部分)

如何使用BeautifulSoup对网页内容进行提取

Python爬虫入门(第2部分)

爬虫运行时数据的存储数据,以SQLite和MySQL作为示例

Python爬虫入门(第3部分)

使用seleniumwebdriver对动态网页进行抓取

Python爬虫入门(第4部分)

讨论了如何处理网站的反爬虫策略

Python爬虫入门(第5部分)

对Python的Scrapy爬虫框架做了介绍,并简单的演示了如何在Scrapy下进行开发

Python爬虫入门(第6部分)

如何入门 Python 爬虫

从爬虫基本要求来看:

1. 抓取:抓取最基本就是拉网页回来,所以第一步就是拉网页回来,慢慢会发现各种问题待优化;

2. 存储:抓回来一般会用一定策略存下来,可以选择存文件系统开始,然后以一定规则命名。

3. 分析:对网页进行文本分析,可以用认为最快最优的办法,比如正则表达式;

4. 展示:要是做了一堆事情,一点展示输出都没有,如何展现价值。

全方面的掌握Requests库的使用【python爬虫入门进阶】(02)

上一篇文章简单的介绍了 爬虫相关的基础知识点,介绍了一个标准的三个步骤 。

这篇文章就让我们接着来学习。

本文重点介绍requests库的使用以及。

之前也写了一篇 Requests库使用的博客 ,有兴趣的小伙伴可以去看看。

前面介绍了Requests库是用来抓取网页源码,请求接口的利器,整体上是要比urllib库的request更加好用的库。

Requests库有7个主要方法。

不过我们平常最常用的方法还是GET方法和POST方法。

get请求方法是爬虫中最常用到的方法,因为爬虫主要就是爬取网页的信息。

最基础的使用是

这里需要通过 res.encoding='utf-8' 设置响应结果的编码格式是utf-8。

不然可能会出现中文

如果响应结果是二进制数据的话则需要通过 res.content 方法来提取响应结果。

设置编码的方式也可以是 res.content.decode('utf-8') 。

有时候get请求也需要传入参数,这里可以直接将参数拼接到URL上或者通过params参数传入一个字典。

运行结果是:

get请求只能传入简单的参数,如果参数比较复杂或者传入的参数比较多的话则GET请求就不再适用了,这时候就需要适用post请求方法了。

Post请求的请求类型有三种:

以表单的方式提交数据是POST请求的默认的请求格式,只需要将参数放在一个字典中进行传入即可。

这里将请求头的数据放在一个名为header的字典中,然后在请求时通过headers参数传入。

在请求中设置了内容类型是 application/json ,编码格式是 charset=utf-8

传入的是一个json,通过data参数进行传入。

json字符串可以直接写也可以通过 json.dumps(dict) 方法将一个字典序列化,就像下面这样。

文件上传与本节爬虫的内容无关,在此就不过多介绍了。

有兴趣的小伙伴可以看看 Python中如何编写接口,以及如何请求外部接口 这篇文章。

在网络请求中,我们常常会遇到状态码是3开头的重定向问题,在Requests中是默认开启允许重定向的,即遇到重定向时,会自动继续访问。

通过将allow_redirects 属性设置为False不允许重定向。

通过timeout属性可以设置超时时间,单位是秒。

get方法和post方法均可设置。

通过status_code属性可以获取接口的响应码。

有时候我们使用了,这时候由于抓包证书提供的证书并不是受信任的颁发机构颁发的,所以证书的验证会失败,所以我们就需要关闭证书验证。

在请求的时候把verify参数设置为False就可以关闭证书验证了。

爬虫协议也叫做,告诉哪些页面可以爬取,哪些页面不能爬取

爬虫文件的规范是:

允许所有的机器人

本文详细介绍了Request库的使用

(随机推荐阅读本站500篇优秀文章点击前往:500篇优秀随机文章)
来源:本文由易搜IT培训资讯原创撰写,欢迎分享本文,转载请保留出处和链接!