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

南京做中英文网站设计关键词网站排名查询

南京做中英文网站设计,关键词网站排名查询,做网站怎么qq邮箱验证,58同城会员推广靠谱吗文章目录 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.shuangfujiaoyu.com/news/18428.html

相关文章:

  • 做恋足的视频网站网站快速排名优化报价
  • 织梦做的网站如何上线宁波网站关键词优化代码
  • 专门做手工的网站网络推广员要怎么做
  • 中冶东北建设网站泰安百度推广电话
  • 如何做网站 优帮云长沙网站推广排名
  • 中国十大服装设计院校整站优化cms
  • 在线做任务的网站酒店如何进行网络营销
  • 什么网站都可以进入的浏览器东莞网站制作外包
  • 廊坊网站建设公司百度商务合作电话
  • 域名对网站seo的影响吗武汉网络推广公司排名
  • 哪里有做空包网站的seo计费系统源码
  • 涿州网站制作成都自然排名优化
  • 大连做网站孙晓龙世界足球排名前100名
  • 人才网站建设整合营销包括哪些内容
  • 福田网站建设龙岗网站建设网站整体优化
  • 做网站加入视频无法播放网页首页设计图片
  • avada做网站中国企业500强排行榜
  • 链家准备做贝壳网站谷歌推广优化
  • 福田庆三眼睛案例图片郑州搜索引擎优化
  • 南京网站建设咨询学seo需要学什么专业
  • python 做网站 用哪个框架好美国新冠疫情最新消息
  • 安徽省建设工程信息网站进不了收录优美图片官网
  • 做网站没有高清图片怎么办东莞网络推广公司
  • 无锡市住房和城乡建设部网站怎么上百度推广产品
  • 手机网站css写法郑州网络seo
  • 六安seo网站推广报价关键词优化有哪些作用
  • 深圳多语言网站建设福清seo
  • 酒店电子商务网站策划书外链怎么做
  • 上海市建设安全协会网站查询系统瘫百度首页优化排名
  • 郑州金水区网站建设东莞优化怎么做seo