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

自己做网站花多少钱app开发费用一般多少钱

自己做网站花多少钱,app开发费用一般多少钱,wordpress导出模板,软件接单Selenium 使用指南:从入门到精通 Selenium 是一个用于自动化 Web 浏览器操作的强大工具,广泛应用于自动化测试和 Web 数据爬取中。本文将带你从入门到精通地掌握 Selenium,涵盖其基本操作、常用用法以及一个完整的图片爬取示例。 1. 环境配…

Selenium 使用指南:从入门到精通

Selenium 是一个用于自动化 Web 浏览器操作的强大工具,广泛应用于自动化测试和 Web 数据爬取中。本文将带你从入门到精通地掌握 Selenium,涵盖其基本操作、常用用法以及一个完整的图片爬取示例。

1. 环境配置

1.1 安装 Selenium

在 Python 环境中,可以通过 pip 安装 Selenium:

pip install selenium

1.2 下载 WebDriver

Selenium 需要与特定浏览器的 WebDriver 一起使用。例如,若使用 Chrome 浏览器,需要下载 ChromeDriver 并确保路径已配置好。

1.3 设置 WebDriver 路径

将下载的 WebDriver 解压后,路径可以设置到系统环境变量中,或在代码中指定其位置。

2. Selenium 基本用法

2.1 启动浏览器并打开页面

from selenium import webdriver# 创建 Chrome 浏览器实例并指定 WebDriver 路径
driver = webdriver.Chrome(executable_path=r'C:\Program Files\Google\Chrome\Application\chromedriver.exe')# 打开网页
driver.get('https://www.example.com')# 关闭浏览器
driver.quit()

2.2 查找元素

可以通过多种方式查找页面中的元素:

# 通过 ID
element_by_id = driver.find_element_by_id('element-id')# 通过 name
element_by_name = driver.find_element_by_name('element-name')# 通过 class
element_by_class = driver.find_element_by_class_name('element-class')# 通过 tag
element_by_tag = driver.find_element_by_tag_name('tag-name')# 通过 CSS selector
element_by_css = driver.find_element_by_css_selector('css.selector')# 通过 XPath
element_by_xpath = driver.find_element_by_xpath('//tag[@attribute="value"]')

2.3 交互操作

2.3.1 点击事件
# 查找并点击按钮
button = driver.find_element_by_id('button-id')
button.click()
2.3.2 输入文本
# 查找输入框并输入文本
input_box = driver.find_element_by_name('input-name')
input_box.send_keys('Hello, World!')

2.4 获取元素属性和文本

# 获取属性值
attribute_value = element_by_id.get_attribute('attribute-name')# 获取文本内容
text_content = element_by_id.text

2.5 等待元素加载

在某些情况下,需要等待元素加载完成:

from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as ECelement = WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.ID, 'element-id'))
)

2.6 处理弹窗和多窗口

2.6.1 处理 JavaScript 弹窗
# 切换并接受弹窗
alert = driver.switch_to.alert
alert.accept()
2.6.2 切换窗口
# 获取所有窗口句柄
handles = driver.window_handles# 切换到新窗口
driver.switch_to.window(handles[1])

2.7 执行 JavaScript

# 滚动页面到元素
driver.execute_script("arguments[0].scrollIntoView();", element_by_id)

2.8 截图

# 保存当前页面截图
driver.save_screenshot('screenshot.png')

2.9 管理 Cookies

# 获取所有 Cookies
cookies = driver.get_cookies()# 添加新 Cookie
driver.add_cookie({'name': 'key', 'value': 'value'})# 删除一个 Cookie
driver.delete_cookie('key')# 删除所有 Cookies
driver.delete_all_cookies()

3. 高级用法:爬取网页图片

3.1 爬取示例代码

以下是一个使用 Selenium 爬取网页图片的完整示例:

from selenium import webdriver
import os
import urllib.request# 设置 ChromeDriver 路径并打开浏览器
driver = webdriver.Chrome(executable_path='path/to/chromedriver')# 打开目标网页
driver.get('https://www.example.com')# 查找所有图片元素
images = driver.find_elements_by_tag_name('img')# 创建保存图片的文件夹
os.makedirs('downloaded_images', exist_ok=True)# 下载所有图片
for i, img in enumerate(images):src = img.get_attribute('src')if src:print(f"Downloading image {i+1}: {src}")# 下载并保存图片urllib.request.urlretrieve(src, f'downloaded_images/image_{i+1}.jpg')# 关闭浏览器
driver.quit()import urllib.request
from selenium import webdriver
from selenium.webdriver.common.by import By
driver = webdriver.Chrome()
driver.get("https://netflav.com/trending")
element_by_id = driver.find_element(By.ID, 'kw')
element_by_id.send_keys("hello")
driver.find_element(By.ID, 'su').click()
plants = driver.find_elements(By.TAG_NAME, "img")
for idx, img_element in enumerate(plants):img_url = img_element.get_attribute('src')urllib.request.urlretrieve(src, f'image_{idx+1}.jpg')
driver.quit()

3.2 代码解释

  • 导入库并设置 WebDriver:导入 Selenium 和 Python 标准库用于文件操作和 HTTP 请求。
  • 打开网页并获取图片元素:使用 find_elements_by_tag_name('img') 获取所有图片元素。
  • 下载图片:遍历图片元素,获取 src 属性并下载图片到本地。

4. 总结

通过本文的介绍,相信你已经对 Selenium 的基本操作和高级应用有了全面的了解。Selenium 是一个强大且灵活的工具,在自动化测试和数据爬取中都能提供极大便利。通过学习和实践这些功能,可以极大地提升自动化流程的效率。希望这篇文章能帮助你更好地掌握 Selenium。

http://www.15wanjia.com/news/44831.html

相关文章:

  • 自适应网站模板网上推广产品怎么做
  • 免费低代码开发平台seo网站查询工具
  • 免费网站建设 百度一下百度推广开户流程
  • 导航网站超链接如何做信息发布推广平台
  • 如何做专业网站的线下推广网站seo优化
  • 齐全的网站建设建网站费用
  • 网站建设准备工作总结信息流广告公司一级代理
  • 手机wordpress汕头百度seo公司
  • 中山快速做网站服务深圳seo招聘
  • 网站在政务新媒体建设方案优化网站排名工具
  • 什么网站可以设计接单做企业网站系统
  • 网址导航程序广州百度seo排名
  • 做抽纸行业网站怎样做一个产品营销方案
  • 网站制作公司排行榜管理培训机构
  • 苏州网站建设开发销售管理怎么带团队
  • 做服装必须看的十大网站百度投诉电话人工服务总部
  • 党务政务建设新闻网站南京网站推广排名
  • 装修公司哪家好兰州的武汉seo排名
  • 服务器上网站建设网站的优化公司
  • 汝州住房和城乡建设局网站网络运营
  • 如何做网站排名第一日本樱花免m38vcom费vps
  • 模板网站建设青岛网站制作过程
  • 做网站开发 甲方提供资料网站推广营销的步骤
  • 用ppt做网站方法做网站用什么软件好
  • 给别人做网站做什么科目网站优化排名软件网站
  • 宁波网站建设多少钱一年今日热点新闻头条排行榜
  • 网站如何实现微企业网站的域名是该企业的
  • 分栏式的网站有哪些网页模板怎么用
  • 真人做的免费视频网站免费制作小程序平台
  • 网站后台和移动开发好的推广平台