CH1.1-爬虫实施前请求库的安装

需要安装的库

爬虫需要python安装相关的库才能正常爬取相关的网页内容,维绕着抓取网页、分析代码 、存储数据三步拆解需要安装的python库。

  1. 网页请求相关的库
  2. 解析网站代码相关的库
  3. 存储攫取的数据相关的库(数据库相关)
  4. web相关的库
  5. APP爬取相关的库

请求库的安装

一般请求库包含6个:1、requests

安装 requests

主要用于发送网络请求,返回响应数据。

  1. 相关链接
  1. 安装方式
    requests为第三方库,有三种方式安装,我自己用的是Win10+Python3.7的环境,pip方式老是报错,我个人推荐用wheel方式安装,没有用源码安装。
wheel 安装方式

在这之前我也从网看了好多的方式尝试解决“版本”确认问题。目前能用的是如下方式。

首先在windows终端中进入python安装目录,然后输入以下命令
pip debug --verbose
即可看到当前python版本可以安装的适配文件标签
下载对应的requests的whl文件
requests-2.25.1-py2.py3-none-any.whl

进入whl文件目录,使用下面的命令进行安装

pip install requests-2.25.1-py2.py3-none-any.whl

安装 Selenium

Selenium 是一个自动化测试工具,利用它我们可驱动浏览器执行特定的动作,如点击、
下拉等操作。对于一些JavaScript渲染的页面来说,这种抓取方式非常有效。

  1. 相关链接
  1. 安装方式
    采用如下代码安装,亲测可行。
    pip install selenium
与Selenium配合使用的工具

Selenium库只是一个自动化测试工具,需要浏览器来配合使用。

ChromeDriver (Chrome浏览器专用)

ChromeDriver需要对应的Chrome浏览器版本

  1. 检查浏览器对应的版本
打开Chrome浏览器
右上角的三个点
点选-帮助
关于 Google Chrome

在这里插入图片描述
我的计算机是 87.0.4280.88 版本

  1. 访问如下的网址下载对应的版本

在这里插入图片描述
解压后对应的chromedriver.exe放到python 安装路径下的script 文件夹中
在这里插入图片描述

验证是否安装成功:

方法1:在Windows10命令行输入 chromedriver 如下图所示说明成功。
在这里插入图片描述
方法2: 运行如下代码查看是否弹出一个空白的chrome浏览器

# -*- coding: utf-8 -*-
from selenium import webdriver
browser = webdriver.Chrome()
GeckoDriver (Firefox浏览器专用)

根据上面的链接下载对应的版本,解压后将geckodriver.exe放在python 安装路径下的script 文件夹中。这种方法和chromedriver一样。
在这里插入图片描述

验证是否安装成功:

执行如下的Python代码。看是否会有一个空白的Firefox浏览器。

# -*- coding: utf-8 -*-
from selenium import webdriver
browser = webdriver.Firefox()
PhantomJS安装 (现在selenium通过 Chrome 的无界模式实现))

ChromeDriver 和 GeckoDriver 都会打开浏览器,Selenium支持PhantomJS,这样在运行的时候不会再弹出一个浏览器了。无界面的、可脚本编程的WebKit浏览器引擎,它原生支持,它原生支持多种web标准:dom操作、css选择器、json、canvas以及SVG,而且PhantomJS的运行效率也很高,还支持各种参数配置,使用非常方便。

相关连接

在这里插入图片描述
根据上面的链接下载对应的版本phantomjs-2.1.1-windows.zip,解压后将bin文件夹下phantomjs.exe放在python 安装路径下的script 文件夹中。这种方法和chromedriver一样。

# -*- coding: utf-8 -*-
from selenium import webdriver
browser = webdriver.PhantomJS()
browser.get('https://www.baidu.com')
print(browser.current_url)

安装 aiohttp

之前介绍的requests库是一个阻塞式HTTP请求库,当发出请求后,程序会一直等待服务器响应,直到得到响应后,程序才会进行下一步处理。此种方式耗时,为提高效率通过aiohttp提供的异步Web服务的库解决。

  1. 相关链接
  1. 安装方式
    pip install aiohttp
  2. 官方推荐两个库
    pip install cchardet# 字符编码检测库
    pip install aiodns# 加速dns的解析库
  3. 验证方式
    import aiohttp
    如果不报错就算安装成功。
HTTP/1.1 200 OK date: Mon, 24 Mar 2025 08:07:02 GMT content-type: text/html; charset=utf-8 content-length: 1314 x-request-id: e31207f8-982d-49a8-b196-fb117c90624e cache-control: no-store, max-age=0 accept-ch: sec-ch-prefers-color-scheme critical-ch: sec-ch-prefers-color-scheme vary: sec-ch-prefers-color-scheme x-adblock-key: MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBANDrp2lz7AOmADaN8tA50LsWcjLFyQFcb/P2Txc58oYOeILb3vBw7J6f4pamkAQVSQuqYsKx3YzdUHCvbVZvFUsCAwEAAQ==_rohAEsglH0kEQ1TU+MvGHxDFBIi1Fg87X70HgBCXve9YBpB+YoGqwIe846ZMfUnB8D+/BSjRtp54dr6VDp73cg== set-cookie: parking_session=44055f24-cdfb-4b0f-b171-01ec71c26efb; expires=Mon, 24 Mar 2025 08:22:03 GMT <!doctype html> <html data-adblockkey="MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBANDrp2lz7AOmADaN8tA50LsWcjLFyQFcb/P2Txc58oYOeILb3vBw7J6f4pamkAQVSQuqYsKx3YzdUHCvbVZvFUsCAwEAAQ==_rohAEsglH0kEQ1TU+MvGHxDFBIi1Fg87X70HgBCXve9YBpB+YoGqwIe846ZMfUnB8D+/BSjRtp54dr6VDp73cg==" lang="en" style="background: #2B2B2B;"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="icon" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVQI12P4//8/AAX+Av7czFnnAAAAAElFTkSuQmCC"> <link rel="preconnect" href="https://www.google.com" crossorigin> </head> <body> <div id="target" style="opacity: 0"></div> <script>window.park = "eyJ1dWlkIjoiNDQwNTVmMjQtY2RmYi00YjBmLWIxNzEtMDFlYzcxYzI2ZWZiIiwicGFnZV90aW1lIjoxNzQyODAzNjIzLCJwYWdlX3VybCI6Imh0dHA6Ly93dzI1LnNiNjYubGVpaGUub25saW5lL1RqTTNaakYwU1hSSFJHODBRa1J5UTNwR1lWSjBSR2x0ZEhGdmVFWTRhbGt3YjJOVlFVUjNiQzlSYXowQlRWUmpNRTFxWjNkTmVsbDVUV3BKTUUxNlRUVlBVVDA5LmRvP3N1YmlkMT0yMDI1MDMyNC0xOTA3LTAyYTYtODliNC1lOWRkNjc3NDY3YzgiLCJwYWdlX21ldGhvZCI6IkdFVCIsInBhZ2VfcmVxdWVzdCI6eyJzdWJpZDEiOiIyMDI1MDMyNC0xOTA3LTAyYTYtODliNC1lOWRkNjc3NDY3YzgifSwicGFnZV9oZWFkZXJzIjp7fSwiaG9zdCI6Ind3MjUuc2I2Ni5sZWloZS5vbmxpbmUiLCJpcCI6IjE4MC4xNzIuNjYuMjM0In0K";</script> <script src="/bKGpdhaji.js"></script> </body> </html>
最新发布
03-25
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值