python和selenium爬虫,网页表格下载自动化脚本

本文介绍了使用Python的Selenium库进行网页自动化操作,包括安装Selenium、配置Chrome驱动、定位网页元素、模拟用户交互以及下载文件的处理。详细讲解了如何通过Selenium实现网页表格的自动化下载和文件管理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、selenium是啥

  • 框架底层使用JavaScript模拟真实用户对浏览器进行操作。测试脚本执行时,浏览器自动按照脚本代码做出点击,输入,打开,验证等操作,就像真实用户所做的一样,从终端用户的角度测试应用程序。
  • 使浏览器兼容性测试自动化成为可能,尽管在不同的浏览器上依然有细微的差别。
  • 使用简单,可使用Java,Python等多种语言编写用例脚本。

二、selenium的安装

1、在python中安装selenium 命令:pip install selenium

在这里插入图片描述

安装成功:

在这里插入图片描述

2、使用谷歌浏览器,在谷歌浏览器的设置中查询自己的谷歌浏览器的版本:设置→关于

在这里插入图片描述

3、下载谷歌浏览器驱动

​ 下载地址:https://registry.npmmirror.com/binary.html?path=chromedriver/

​ 找到符合版本号的驱动文件夹

在这里插入图片描述

选择适合你电脑的驱动版本,window下载win32的就好了

在这里插入图片描述
下载之后,将解压的文件放在python的目录中
在这里插入图片描述

三、使用selenium写自动化网页操作脚本

1、import要用到的包
import time
import os
import shutil
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.wait import WebDriverWait

咱也分不清这些包具体哪个是干嘛的,但是在程序里都用上了

2、selenium使用

思路:由于selenium自动化脚本是模拟人的操作,所以程序就按照你对这个网站进行操作的顺序写

2.1打开谷歌浏览器、窗口最大化
driver = webdriver.Chrome()
driver.maximize_window()
2.2输入网址
driver.get("你要让程序进入的网址")
2.3selenium的定位

selenium的定位到某一个网页上的元素(输入框、按钮等)的方法共有八种,具体是哪八种可以百度,这里只介绍我用到最方便的一种(XPATH定位)。举个例子。

在网页中按F12,显示网页源码。点击定位器

在这里插入图片描述

再在网页上点击这个元素,源码中就会标出,比如我点击百度的输入框,这个输入框的代码的就会被标蓝色

在这里插入图片描述

在这里插入图片描述

右键标蓝代码→Copy→Copy XPath

在这里插入图片描述

这个时候你就复制了这个元素的xpath了,可以在程序中使用

比如:我要在登录页面输入账号和密码,然后点击登录按钮

driver.find_element(by=By.XPATH, value="你复制的账号输入框的XPath").send_keys("你的账号")
driver.find_element(by=By.XPATH, value="你复制的密码输入框的XPath").send_keys("你的密码")
driver.find_element(by=By.XPATH, value="你复制的登录按钮的XPath").click()
2.4selenium获取某一元素的文本,比如标签或者按钮上的文字

这个可以用于下载的数据表格文件的命名,否则下载的文件很可能是乱命名的,不便于我们的使用。

my_text = driver.find_element(by=By.XPATH, value="该元素的XPath").text
2.5selenium回到页面顶部或者拉到页面底部

我在程序中遇到某一页面滚动条被滑到

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值