用selenium和xpath定位元素并获取属性值以及str字符型转json型

页面html如图所示:

要使用xpath定位这个div元素,并且获取其属性data-config的内容值。

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.chrome.options import Options

host='127.0.0.1'
port='10808'
chrome_options = Options()#如果是from selenium.webdriver.edge.options import Options,打开edge;如果是from selenium.webdriver.chrome.options import Options,打开chrome
chrome_options.add_argument("--proxy-server=socks5://" + host + ":" + port)

driver = webdriver.Chrome(options=chrome_options)
url = "https://xxxx.xxx/archives/1234/"
driver.get(url)
div =driver.find_element(By.XPATH,"//div[@class='dplayer dplayer-no-danmaku']")
str_attr=div.get_attribute('data-config')
print(str_attr)

import json
json_attr=json.loads(str_attr)
print(json_attr)
print(json_attr['video']['url'])

结果如图:

蓝色的为str类型,红色的为json类型。

那么先得到的是str类型,如何转换为json类型呢?使用如下代码即可。

import json

json_attr=json.loads(str_attr)

读取json数据用json_attr['video']['url']即可。具体可参阅这篇好文:

如何将 Python 字符串转换为 JSON

相关推荐
汽水配辣条3 小时前
安装selenium、chrome、chromedriver.exe相对应的版本
chrome·selenium·测试工具
qq_433716954 小时前
UI自动化测试的边界怎么定义?
自动化测试·软件测试·测试工具·jmeter·ui·接口测试·postman
weixin_418123556 小时前
Selenium点击元素的方法
python·selenium
pjx98710 小时前
JVM 性能调优与监控
jvm·测试工具
黑客学长-刘备12 小时前
2024最新最全:Wireshark抓包详解(非常详细)零基础入门到精通,收藏这篇就够了
网络·测试工具·wireshark
傻啦嘿哟13 小时前
Selenium元素定位:深入探索与实践
selenium·测试工具
子枫i13 小时前
Selenium 4.* 获取网页token
selenium·测试工具
昕er14 小时前
Python 中自动打开网页并点击[自动化脚本],Selenium
python·selenium·自动化
傻啦嘿哟14 小时前
动态内容加载处理:使用Selenium与BeautifulSoup的深入解析
selenium·测试工具·beautifulsoup
风控牛14 小时前
【chromedriver编译-绕过selenium机器人检测】
java·python·selenium·测试工具·安全·机器人·行为验证