Python爬虫——请求库安装

目录

  • 1.打开Anaconda Prompt 创建环境
  • 2.安装resuests
  • 3.验证是否安装成功
  • 4.安装Selenium
  • 5.安装ChromeDriver
    • 5.1获取chrom的版本
      • 5.1.1点击浏览器右上三个点
      • 5.1.2点击设置
      • 5.1.3下拉菜单,点击最后关于Chrome,获得其版本
    • 5.2 打开网址 [chromedriver](https://googlechromelabs.github.io/chrome-for-testing/)
    • 5.3解压下载的压缩包,将可执行文件移动到chrome浏览器安装位置
    • 5.4配置环境变量
      • 5.4.1准备工作
      • 5.4.2*名字起个chromedriver,变量值复制前面chrome的路径即可,然后点击确定即可*
    • 5.5将chromedriver.exe放在anaconda安装路径下的Scripts的目录下如下:
    • 5.6验证chromedriver是否安装成功
  • 6.安装PhantomJS
    • 6.1去官网选择相应的版本下载
    • 6.2配置环境变量
    • 6.3测试是否配置成功
  • 7.安装aiohttp
    • 7.1安装
    • 7.2验证

我创建了一个社区,欢迎大家一起学习交流。社区名称:Spider学习交流

注:该系列教程已经默认用户安装了Pycharm和Anaconda,未安装的可以参考我之前的博客有将如何安装。同时默认用户掌握了Python基础语法。

爬虫可以简单分为几步:1.抓取页,2.分析页面,3.存储数据
在抓取页面的过程中 ,我们需要模拟浏览器向服务器发出请求,所以需要用到一些 Python 库来实现HTTP 请求操作,因此我们先介绍怎么安装这些请求库。

1.打开Anaconda Prompt 创建环境

打开Anaconda Prompt (anaconda),新建一个虚拟环境。不太会的可以先参考我这篇博客Pycharm+Anaconda+yolov5-5.0部署(手把手教+解决一些运行过程中的问题+最全部署yolov5,和Windows配置深度学习环境:安装Pytorch(自动安装cudn和cudnn+图文+快速+很简单)几分钟搞定这两篇博文,里面说的很清楚,大家只需要看前面部分即可。

#1.创建虚拟环境(spider是自己起的名字,大家随机即可)
conda create -n spider python
#2.激活虚拟环境spider
conda activate spider
#3.输入python测试py环境
python
#4.退出
exit()

1.创建虚拟环境显示
在这里插入图片描述
2.激活虚拟环境显示
在这里插入图片描述
3.测试py环境显示+退出
在这里插入图片描述

2.安装resuests

安装的方法很多,我在这就拿最简单的演示。

#1.输入代码
conda install requests
#2.如何输入y等待即可

在这里插入图片描述

3.验证是否安装成功

#1.输入代码
python
#2.输入
import requests
# 若没有报错证明安装成功,结果如下显示

在这里插入图片描述

4.安装Selenium

Selenium 是一个自动化测试工具,利用它我们可以驱动浏览器执行特定的动作,如点击、下拉等操作。

#和requests一样的安装方法
conda install selenium
#安装完成以后同样的验证方法,结果如下:

在这里插入图片描述

5.安装ChromeDriver

想必大家都有Chrome浏览器吧(嘿嘿嘿)。
没安装的可以自己安装方法很多,在此不再赘述!

接下来介绍如何安装ChromeDriver,因为只有安装这个,才能驱动Chrome浏览器进行相应的操作,其他浏览器同理。

#1.先打开自己的Chrome浏览器查看查看版本
#2.点击 hrome 菜单“帮助”→“关于 Google Chrome”,即可查看 Chrome 的版本号

5.1获取chrom的版本

5.1.1点击浏览器右上三个点

如下图:
在这里插入图片描述

5.1.2点击设置

在这里插入图片描述

5.1.3下拉菜单,点击最后关于Chrome,获得其版本

在这里插入图片描述

版本是121.0

5.2 打开网址 chromedriver

在这里插入图片描述

由于未更新到最高版本,选择第一个即可,点击stable。

查看自己的电脑版本win+R ,输入msinfo32,查看自己电脑架构,如何下载相应的文件即可。
在这里插入图片描述

点击相应的版本下载

在这里插入图片描述
在这里插入图片描述

5.3解压下载的压缩包,将可执行文件移动到chrome浏览器安装位置

在这里插入图片描述
chrome安装位置,可以通过点击chrome ,如何右键选择打开文件位置即可找到。
在这里插入图片描述

5.4配置环境变量

按下win键→搜索框输入:高级系统设置+回车→环境变量→用户变量→Path→编辑→新建,将上面的浏览器安装目录进行复制粘贴,然后不要忘记后续全部点击确定

5.4.1准备工作

在这里插入图片描述
在这里插入图片描述

5.4.2名字起个chromedriver,变量值复制前面chrome的路径即可,然后点击确定即可

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

然后一路确定即可!

5.5将chromedriver.exe放在anaconda安装路径下的Scripts的目录下如下:

在这里插入图片描述
在这里插入图片描述

5.6验证chromedriver是否安装成功

#输入如下代码:
python
from selenium.webdriver import Chrome
web = Chrome()
web.get("http://www.baidu.com")

出现下述结果,则说明配置成功!!
在这里插入图片描述

拓展:对于其它浏览器的驱动,同样的方法,自己配置即可。

6.安装PhantomJS

        PhantomJS 是一个无界面 、可脚本编程的 WebKit 浏览器引擎,它支持多 Web 标准 DOM操作、 ss 选择器、 JSON Canvas 以及 SVG。
        Selenium 支持 PhantomJS ,这样在运行的时候就不会再弹出浏览器了,而且 PhantomJS 的运行效率也很高,同时支持各种参数配置,使用很方便。

6.1去官网选择相应的版本下载

  1. 官方网站
    在这里插入图片描述
    2.解压下载的zip文件,将bin文件夹的路径添加到环境变量
    如下:
    在这里插入图片描述

复制下面路径

在这里插入图片描述

6.2配置环境变量

方法和前面一样
在这里插入图片描述
在这里插入图片描述

6.3测试是否配置成功

#第一种情况
#1.打开anaconda prompt激活环境
conda activate spider
#2.输入phantomjs
phantomjs
#若出现下述界面则正确#或者下面代码
#第二种情况
python
from selenium import webdriver 
browser = webdriver.PhantomJS()
browser.get('https://www.baidu.com') 
print(browser.current_url)

第一种情况:
在这里插入图片描述
第二种情况:
在这里插入图片描述

7.安装aiohttp

7.1安装

requests 库是一个阻塞式 HTTP 请求库,当我们发出一个请求后,程序会一直等待服器响应,直到得到响应后,程序才会进行下一步处理 其实,这个过程比较长,如果程序可以在这个等待过程中做一些其他的事情,如进行请求的调度 响应的处理等,那么效率可以大幅度提高。
aiohttp 就是这样一个提供异步 We 服务的库,使用异步请求库进行数据抓取时, 会大大提高效率。

#1.激活conda虚拟环境
conda activate spider
#2.安装aiohttp
conda install aiohttp

在这里插入图片描述

7.2验证

python
import aiohttp 
#如果没有错误报出,则证明库已经安装好了
#结果如下:

在这里插入图片描述

接下来会写解析库的安装。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/255471.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vue3:25—其他API

目录 1、shallowRef和shallowReactive 2、readonly与shallowReadonly readonly shallowReadonly 3、toRaw和markRaw toRaw markRaw 4、customRef 1、shallowRef和shallowReactive shallowRef 1.作用:创建一个响应式数据,但只对顶层属性进行响应式处理。2…

2024-02-07(Sqoop,Flume)

1.Sqoop的增量导入 实际工作中,数据的导入很多时候只需要导入增量的数据,并不需要将表中的数据每次都全部导入到hive或者hdfs中,因为这样会造成数据重复问题。 增量导入就是仅导入新添加到表中的行的技术。 sqoop支持两种模式的增量导入&a…

基于javaEE的ssm仓库管理系统

仓库管理系统的重中之重是进销存分析这一板块,在这一板块中,顾名思义能够查询到近期的进货记录,包括每日的进货单据,单品推移(即某一商品的库存变化),方便我们核对库存差异。同时也需要查询到每日的销售数据&#xff0…

【开源】JAVA+Vue.js实现衣物搭配系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、研究内容2.1 衣物档案模块2.2 衣物搭配模块2.3 衣物收藏模块 三、系统设计3.1 用例设计3.2 E-R图设计3.3 数据库设计3.3.1 衣物档案表3.3.2 衣物搭配表3.3.3 衣物收藏表 四、系统实现4.1 登录页4.2 衣物档案模块4.3 衣物搭配模块4.4…

[HTTP协议]应用层的HTTP 协议介绍

目录 1.前言 2.使用fiddler抓包来观察HTTP协议格式 3.HTTP协议的基本格式 2.1请求 2,1.1首行 2.1.2请求头 2.1.3空行 2.2响应 2.2.1首行 2.2.2响应头 键值对 ​编辑2.2.3空行 2.2.4载荷(响应正文) 3.认识URL 3.1关于URL encode 1.前言 我们在前面的博客中,简单的…

如何实现视线(目光)的检测与实时跟踪

如何实现视线(目光)的检测与实时跟踪 核心步骤展示说明 找到人脸 检测人脸特征点 根据特征点找到人眼区域 高精度梯度算法检测瞳孔中心 根据眼睛周边特征点计算眼睛中心 瞳孔中心和眼睛中心基于视线模型计算视线方向 视线方向可视化 详细实现与说明: https://stud…

QT Linux下无法使用CTRL+ALT+P快捷键,不生效

文章目录 一、背景二、排查(1)检查创建,发现没问题。(2)查看 shortcutMap 是否注册(3)排查xcb有没有获取到该事件(4)排查是否是系统的问题(5)www.…

YUM | 包安装 | 管理

YUM 功能 软件包安装&#xff1a; 通过yum命令安装软件包。例如&#xff0c;安装一个名为 example-package 的软件包 yum install example-package更新包 检查更新&#xff1a; 检查可用更新&#xff1a; sudo yum check-update <package_name>软件包更新&#xff1a; y…

【MySQL】数据库的基础——数据库的介绍、MySQL的介绍和架构、SQL分类、MySQL的基本使用、MySQL的存储引擎

文章目录 MySQL1. 数据库的介绍1.2 主流数据库 2. MySQL的介绍2.1 MySQL架构2.2 SQL分类2.3 MySQL的基本使用2.4 MySQL存储引擎 MySQL 1. 数据库的介绍 数据库&#xff08;Database&#xff0c;简称DB&#xff09;是按照数据结构来组织、存储和管理数据的仓库。它是长期存储在计…

vue+vite项目,动态导入静态资源的几种方式

博主的桌面工具软件已经正式开发&#xff0c;获取方式&#xff1a; 可以关注我的小程序【中二少年工具箱】获取。&#xff08;若小程序更新有延迟&#xff0c;可先收藏小程序&#xff09; 通过下载链接 百度网盘: 链接&#xff1a;https://pan.baidu.com/s/15zDnSoEzJGSZLjpD…

Swift Combine 发布者publisher的生命周期 从入门到精通四

Combine 系列 Swift Combine 从入门到精通一Swift Combine 发布者订阅者操作者 从入门到精通二Swift Combine 管道 从入门到精通三 1. 发布者和订阅者的生命周期 订阅者和发布者以明确定义的顺序进行通信&#xff0c;因此使得它们具有从开始到结束的生命周期&#xff1a; …

python+flask+django医院预约挂号病历分时段管理系统snsj0

技术栈 后端&#xff1a;python 前端&#xff1a;vue.jselementui 框架&#xff1a;django/flask Python版本&#xff1a;python3.7 数据库&#xff1a;mysql5.7 数据库工具&#xff1a;Navicat 开发软件&#xff1a;PyCharm . 第一&#xff0c;研究分析python技术&#xff0c…

NLP_神经概率语言模型(NPLM)

文章目录 NPLM的起源NPLM的实现1.构建实验语料库2.生成NPLM训练数据3.定义NPLM4.实例化NPLM5.训练NPLM6.用NPLM预测新词 NPLM小结 NPLM的起源 在NPLM之前&#xff0c;传统的语言模型主要依赖于最基本的N-Gram技术&#xff0c;通过统计词汇的共现频率来计算词汇组合的概率。然而…

C#使用哈希表对XML文件进行查询

目录 一、使用的方法 1.Hashtable哈希表 2.Hashtable哈希表的Add方法 &#xff08;1&#xff09;定义 &#xff08;2&#xff09;示例 3.XML文件的使用 二、实例 1.源码 2.生成效果 可以通过使用哈希表可以对XML文件进行查询。 一、使用的方法 1.Hashtable哈希表…

Go指针探秘:深入理解内存与安全性

目录 1. 指针的基础1.1 什么是指针&#xff1f;1.2 内存地址与值的地址1.2.1 内存中的数据存储1.2.2 如何理解值的地址 2. Go中的指针操作2.1 指针类型和值2.1.1 基本数据类型的指针2.1.2 复合数据类型的指针 2.2 如何获取一个指针值2.3 指针&#xff08;地址&#xff09;解引用…

14.0 Zookeeper环球锁实现原理

全局锁是控制全局系统之间同步访问共享资源的一种方式。 下面介绍zookeeper如何实现全民锁&#xff0c;讲解他锁和共享锁两类全民锁。 排他锁 排他锁&#xff08;Exclusive Locks&#xff09;&#xff0c;又被称为写锁或独占锁&#xff0c;如果事务T1对数据对象O1加上排他锁…

MongoDB部署策略

内 容 简 介 本文介绍了MongoDB数据库的优点的数据存储模式的安装部署过程。 利用MongoDB在存储海量数据上的优势&#xff0c;部署存储空间大数据。 欢迎批评指正补充 由于编者水平有限&#xff0c;所搜集资料也很有限&#xff0c;制定的规范肯定有考虑不周全、甚至完全错误…

【RT-DETR有效改进】利用SENetV2重构化网络结构 (ILSVRC冠军得主,全网独家首发)

👑欢迎大家订阅本专栏,一起学习RT-DETR👑 一、本文介绍 本文给大家带来的改进机制是SENetV2,其是2023.11月的最新机制(所以大家想要发论文的可以在上面下点功夫),其是一种通过调整卷积网络中的通道关系来提升性能的网络结构。SENet并不是一个独立的网络模型,而…

flask+python企业产品订单管理系统938re

在设计中采用“自下而上”的思想&#xff0c;在创新型产品提前购模块实现了个人中心、个体管理、发布企业管理、投资企业管理、项目分类管理、产品项目管理、个体投资管理、企业投资管理、个体订单管理、企业订单管理、系统管理等的功能性进行操作。最终&#xff0c;对基本系统…

Peter算法小课堂—背包问题

我们已经学过好久好久的动态规划了&#xff0c;动态规划_Peter Pan was right的博客-CSDN博客 那么&#xff0c;我用一张图片来概括一下背包问题。 大家有可能比较疑惑&#xff0c;优化决策怎么优化呢&#xff1f;答案是&#xff0c;滚动数组&#xff0c;一个神秘而简单的东西…