python+selenium调用chrome打开网址获取内容
通过selenium库,python可以调用chrome打开指定网页并获取网页内容或者模拟登陆获取网页内容
1,安装selenium和配置chromedriver
- 安装selenium
C:\Users\cord> pip install selenium
- 配置chromedriver
下载路径: http://chromedriver.storage.googleapis.com/index.html
该下载什么版本根据浏览器版本以及附录的版本对照表下载
将下载的压缩包解压后得到的chromedriver.exe
复制到C:\Program Files (x86)\Google\Chrome\Application
路径下即可
2,调用chromedriver打开网页获取网页内容
from selenium import webdriver
#设置chromedriver
browser = webdriver.Chrome("C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe")
#设置超时时间
browser.set_page_load_timeout(10)
#打开网页
browser.get("http://www.cnblogs.com/cord/")
#打印网页内容
print(browser.page_source)
print("--------------------------------------------------------------------------------")
browser.get("https://www.baidu.com")
print(browser.page_source)
3,模拟登陆百度云
from time import sleep
from selenium import webdriver
browser = webdriver.Chrome("C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe")
sleep(0.5)
browser.get("https://pan.baidu.com/")
sleep(2) #等待页面加载
browser.find_element_by_xpath('//*[@id="TANGRAM__PSP_4__footerULoginBtn"]').click() #选择账号密码登录
sleep(2)
browser.find_element_by_name("userName").send_keys("1142903706@qq.com") #输入账户密码
browser.find_element_by_name("password").send_keys("1142903706")
browser.find_element_by_xpath('//*[@id="TANGRAM__PSP_4__submit"]').click() #登录
sleep(1)
#退出
browser.close()
browser.quit()
4, 异常问题
selenium.common.exceptions.WebDriverException: Message: Service /Users/admin/.wdm/drivers/chromedriver/mac64/126.0.6478.126/chromedriver-mac-arm64/chromedriver unexpectedly exited. Status code was: -9
这种情况一般是因为chromedriver没正常退出,可以进程管理器关闭chrome相关进程,并且代码改造,整体捕获异常
附录(webdriver版本兼容列表)
chromedriver版本 | 支持的Chrome版本 |
---|---|
v2.46 | v71-73 |
v2.45 | v70-72 |
v2.44 | v69-71 |
v2.43 | v69-71 |
v2.42 | v68-70 |
v2.41 | v67-69 |
v2.40 | v66-68 |
v2.39 | v66-68 |
v2.38 | v65-67 |
v2.37 | v64-66 |
v2.36 | v63-65 |
v2.35 | v62-64 |
v2.34 | v61-63 |
v2.33 | v60-62 |
v2.32 | v59-61 |
v2.31 | v58-60 |
v2.30 | v58-60 |
v2.29 | v56-58 |
v2.28 | v55-57 |
v2.27 | v54-56 |
v2.26 | v53-55 |
v2.25 | v53-55 |
v2.24 | v52-54 |
v2.23 | v51-53 |
v2.22 | v49-52 |
v2.21 | v46-50 |
v2.20 | v43-48 |
v2.19 | v43-47 |
v2.18 | v43-46 |
v2.17 | v42-43 |
v2.13 | v42-45 |
v2.15 | v40-43 |
v2.14 | v39-42 |
v2.13 | v38-41 |
v2.12 | v36-40 |
v2.11 | v36-40 |
v2.10 | v33-36 |
v2.9 | v31-34 |
v2.8 | v30-33 |
v2.7 | v30-33 |
v2.6 | v29-32 |
v2.5 | v29-32 |
v2.4 | v29-32 |
版本选择相关网站: https://sites.google.com/a/chromium.org/chromedriver/downloads/version-selection
参考链接:
https://www.jianshu.com/p/4b84a7d7e567
https://www.cnblogs.com/eternal1025/p/8880245.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人