当前位置: 首页 > news >正文

南京做中英文网站设计徐州网站关键词排名

南京做中英文网站设计,徐州网站关键词排名,深圳品牌网站制作报价,什么网站加盟代理做的专业文章目录 Selenium与Requests对比一、工作原理二、功能特点三、性能表现 下载对应驱动1.首先我们需要打开edge浏览器,打开设置,找到“关于Microsoft Edge”,点击进入查看浏览器版本。2.查找版本之后,搜索edge驱动下载,…

文章目录

  • Selenium与Requests对比
    • 一、工作原理
    • 二、功能特点
    • 三、性能表现
  • 下载对应驱动
    • 1.首先我们需要打开edge浏览器,打开设置,找到“关于Microsoft Edge”,点击进入查看浏览器版本。
    • 2.查找版本之后,搜索edge驱动下载,进入下载页面,选择对应的版本下载就可以。
  • 使用Selenium爬取脚本实例
    • 1.导入必要的库和模块:
    • 2.设置Edge浏览器的无头模式:
    • 3.初始化Edge WebDriver:
    • 4.访问网页:
    • 5.等待页面元素加载:
    • 6.查找并遍历列表元素:
    • 7.关闭浏览器:

Selenium爬虫与Requests在多个方面存在显著差异,这些差异主要体现在它们的工作原理、功能特点、适用场景以及性能表现上。在某些情况下,我们使用Selenium爬取文本内容更好,这里我们先将其与Requests进行对比。

Selenium与Requests对比

一、工作原理

Requests:

  • Requests是一个HTTP库,用于发送各种HTTP请求(如GET、POST等)。
  • 它直接发送HTTP请求到服务器,并接收服务器的响应,不涉及浏览器环境的模拟。
    Selenium:
  • Selenium是一个自动化测试工具,通过控制浏览器来模拟用户的各种行为,如点击、滚动、填写表单等。
  • 它通过浏览器驱动程序与浏览器进行交互。

二、功能特点

Requests:

  • 简单、快速、轻量级,易于使用和集成。
  • 主要用于发送HTTP请求和接收响应,适用于静态网页内容的抓取。
  • 不具备浏览器自动化功能。

Selenium:

  • 功能强大,能够模拟用户与浏览器的所有交互行为。
  • 适用于动态网页、单页面应用(SPA)以及需要用户交互的网页内容的抓取。

三、性能表现

Requests:

  • 由于不加载JavaScript或CSS等资源,响应时间更短,资源消耗更少。
  • 在处理静态网页内容时,性能表现优异。

Selenium:

  • 需要加载完整的页面资源,因此速度相对较慢。
  • 占用更多的CPU和内存资源,特别是在处理多个浏览器实例或并发请求时。
    综上所述,Selenium爬虫与Requests在多个方面存在显著差异。选择哪个工具取决于具体的项目需求、网页类型以及性能要求。对于简单的静态网页内容抓取,Requests可能是更合适的选择;而对于复杂的动态网页、需要用户交互的网页或Web应用程序的抓取,Selenium则更具优势。

下载对应驱动

在使用Selenium之前,我们需要先下载对应浏览器的驱动程序(如 Edge 驱动程序)来与浏览器进行交互。下面我们讲解如何安装驱动。

1.首先我们需要打开edge浏览器,打开设置,找到“关于Microsoft Edge”,点击进入查看浏览器版本。

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

2.查找版本之后,搜索edge驱动下载,进入下载页面,选择对应的版本下载就可以。

图例:
在这里插入图片描述
下载完成之后,将文件放在含有python的文件夹内(注意一定要放在一个文件夹下),这样我们就可以使用Selenium爬取脚本了。

使用Selenium爬取脚本实例

下面我们使用Selenium库和Edge浏览器(通过Edge WebDriver)来自动化访问网页并抓取数据的Python脚本。

1.导入必要的库和模块:

import time# pip install selenium
# 下载对应版本的驱动 放在python文件下from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.edge.options import Options
  • time:用于在代码执行过程中添加延时。
  • webdriver从selenium包中导入,用于控制浏览器。
  • By从selenium.webdriver.common.by中导入,用于指定元素定位的方式(如XPath、CSS选择器等)。
  • expected_conditions(别名EC)和WebDriverWait从selenium.webdriver.support和selenium.webdriver.support.ui中导入,用于设置等待条件,以便在元素可用之前暂停执行。
  • Options从selenium.webdriver.edge.options中导入,用于配置Edge浏览器的启动选项,如设置为无头模式。

2.设置Edge浏览器的无头模式:

if __name__ == '__main__':# 无头模式opt = Options()opt.add_argument("--headless")
  • 创建Options实例,并通过add_argument(“–headless”)设置浏览器在无头模式下运行,即不显示浏览器界面。

3.初始化Edge WebDriver:

    driver = webdriver.Edge(options=opt)
  • 使用webdriver.Edge(options=opt)创建Edge WebDriver实例,传入之前配置的选项opt。

4.访问网页:

    # 请求页面driver.get('https://101.qq.com/#/hero')
  • 使用driver.get(‘https://101.qq.com/#/hero’)访问指定的网页地址。

5.等待页面元素加载:

    # 强制等待time.sleep(10)# 等待某个元素加载完成WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.XPATH,"//ul[@class='hero-list']")))
  • 使用WebDriverWait和EC.presence_of_element_located等待页面上某个元素(这里是类名为hero-list的ul元素)出现。这是一种比time.sleep()更智能的等待方式,因为它会等待直到条件满足(元素出现)或达到最大等待时间(这里是10秒)。

6.查找并遍历列表元素:

    li_list = driver.find_elements(By.XPATH,"//ul[@class='hero-list']/li")for li in li_list:img_url = li.find_element(By.XPATH,"div/div/img").get_attribute("src")hero_name = li.find_element(By.XPATH,"div/p").textprint(img_url,hero_name)
  • 使用find_elements方法通过XPath定位到ul[@class=‘hero-list’]下的所有li元素,并将它们存储在li_list列表中。
  • 遍历li_list中的每个li元素,对于每个元素:
  • 使用find_element和XPath定位到该li元素内的img标签,并获取其src属性(即图片URL)。
  • 同样地,定位到该li元素内的p标签,并获取其文本内容(即英雄名称)。
  • 打印出图片URL和英雄名称。

7.关闭浏览器:

    driver.close()pass
  • 使用driver.close()关闭浏览器。
    这段代码演示了如何使用Selenium和Edge WebDriver来自动化访问一个网页,等待页面上的特定元素加载完成,然后抓取该页面上特定列表项中的图片URL和文本内容。
http://www.zhongyajixie.com/news/23845.html

相关文章:

  • 福州网站建设服务价格最实惠飓风seo刷排名软件
  • 网站建设公司广告搜索排名查询
  • 做微商哪个网站比较好东莞seo建站
  • 做网站go和php用哪个好重庆网络推广平台
  • 做私服网站租给发布站百度学术官网入口网页版
  • 建网站后如何运营百度拍照搜索
  • 广州天河建站公司自助建站工具
  • 天河网站建设价格杭州百度百家号seo优化排名
  • 网站制作布局百度推广一般要多少钱
  • 做打井宣传广告找什么网站百度爱采购怎么优化排名
  • 菏泽营销网站建设seo联盟
  • 参考消息电子版官网seo关键词优化报价价格
  • 绵阳市网站建设公司惠州网站营销推广
  • 桥东区网站建设搜索引擎营销包括
  • 内贸在什么网站做竞价推广代运营
  • 日本建筑设计网站关键词查询工具包括哪些
  • 哈尔滨网站制作策划seoul是什么意思
  • 网站网站建设公司国外搜索网站排名
  • 名聚优品 一家只做正品的网站中国优化网
  • 猎头公司联系方式seo建站要求
  • 合肥公司做网站可以免费投放广告的平台
  • wordpress主题 csdn德州seo整站优化
  • 网站设置始终请求电脑版百度网盘电脑版官网
  • wordpress站群 会员山西seo和网络推广
  • 沈阳网站推广优化公司哪家好中级经济师考试
  • 百度网站客服电话人工服务广点通和腾讯朋友圈广告区别
  • 中江建设银行网站seo网站推广怎么做
  • 做网站维护有什么要求网站搜索引擎优化的步骤
  • 宅男做网站市场调研报告万能模板
  • 继续浏览此网站(不推荐)网页设计与制作软件