Selenium+BeautifulSoup+json获取Script标签内的json数据


Posted in Python onDecember 07, 2020

Selenium爬虫遇到 数据是以 JSON 字符串的形式包裹在 Script 标签中,

假设Script标签下代码如下:

<script id="DATA_INFO" type="application/json" >
{
  "user": {
    "isLogin": true,
    "userInfo": {
      "id": 123456,
      "nickname": "LiMing",
      "intro": "人生苦短,我用python"
    }
  }
}
</script>

此时drive.find_elements_by_xpath('//*[@id="DATA_INFO"] 只能定位到元素,但是无法通过.text方法,获取Script标签下的json数据

from bs4 import BeautifulSoup as bs
import json as js
#selenium获取当前页面源码
html = drive.page_source
#BeautifulSoup转换页面源码
bs=BeautifulSoup(html,'lxml')
#获取Script标签下的完整json数据,并通过json加载成字典格式
js_test=js.loads(bs.find("script",{"id":"DATA_INFO"}).get_text())
#获取Script标签下的nickname 值
js_tes

到此这篇关于Selenium+BeautifulSoup+json获取Script标签内的json数据的文章就介绍到这了,更多相关Selenium+BeautifulSoup获取json内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Tensorflow 训练自己的数据集将数据直接导入到内存
Jun 19 Python
Tensorflow使用支持向量机拟合线性回归
Sep 07 Python
使用Pandas对数据进行筛选和排序的实现
Jul 29 Python
Python closure闭包解释及其注意点详解
Aug 28 Python
详解Django CAS 解决方案
Oct 30 Python
python matplotlib 画dataframe的时间序列图实例
Nov 20 Python
python opencv根据颜色进行目标检测的方法示例
Jan 15 Python
jupyter notebook实现显示行号
Apr 13 Python
给keras层命名,并提取中间层输出值,保存到文档的实例
May 23 Python
关于keras中keras.layers.merge的用法说明
May 23 Python
Python实现一个优先级队列的方法
Jul 31 Python
Github 使用python对copilot做些简单使用测试
Apr 14 Python
Python爬虫实战案例之爬取喜马拉雅音频数据详解
Dec 07 #Python
用python对excel查重
Dec 07 #Python
python3 通过 pybind11 使用Eigen加速代码的步骤详解
Dec 07 #Python
python 通过 pybind11 使用Eigen加速代码的步骤
Dec 07 #Python
Python中BeautifulSoup通过查找Id获取元素信息
Dec 07 #Python
BeautifulSoup中find和find_all的使用详解
Dec 07 #Python
python爬虫beautifulsoup解析html方法
Dec 07 #Python
You might like
php获取表单中多个同名input元素的值
2014/03/20 PHP
PHP字符串比较函数strcmp()和strcasecmp()使用总结
2014/11/19 PHP
php实现json编码的方法
2015/07/30 PHP
thinkphp框架page类与bootstrap分页(美化)
2017/06/25 PHP
jquery 倒计时效果实现秒杀思路
2013/09/11 Javascript
Extjs4中的分页应用结合前后台
2013/12/13 Javascript
js控制浏览器全屏示例代码
2014/02/20 Javascript
jQuery Real Person验证码插件防止表单自动提交
2015/11/06 Javascript
JS组件Bootstrap dropdown组件扩展hover事件
2016/04/17 Javascript
jQuery事件绑定on()与弹窗实现代码
2016/04/28 Javascript
jQuery实现自动调用和触发某个事件的方法
2016/11/18 Javascript
js继承实现方法详解
2016/12/16 Javascript
Javascript es7中比较实用的两个方法示例
2017/07/21 Javascript
vue 子组件向父组件传值方法
2018/02/26 Javascript
Vue实现一个无限加载列表功能
2018/11/13 Javascript
vue项目首屏加载时间优化实战
2019/04/23 Javascript
原生JS实现随机点名项目的实例代码
2019/04/30 Javascript
微信小程序封装的HTTP请求示例【附升级版】
2019/05/11 Javascript
Antd的table组件表格的序号自增操作
2020/10/27 Javascript
[03:31]DOTA2英雄基础教程 大地之灵
2013/12/17 DOTA
[35:29]Secret vs VG 2018国际邀请赛淘汰赛BO3 第三场 8.23
2018/08/24 DOTA
python 字典(dict)遍历的四种方法性能测试报告
2014/06/25 Python
Python入门篇之正则表达式
2014/10/20 Python
Python简单删除列表中相同元素的方法示例
2017/06/12 Python
Python 保存矩阵为Excel的实现方法
2019/01/28 Python
Django urls.py重构及参数传递详解
2019/07/23 Python
Docker部署Python爬虫项目的方法步骤
2020/01/19 Python
英国家电购物网站:Sonic Direct
2019/03/26 全球购物
采购文员岗位职责
2013/11/20 职场文书
求职简历推荐信范文
2013/12/02 职场文书
硕士研究生自我鉴定范文
2013/12/27 职场文书
人事专员岗位说明书
2014/07/29 职场文书
毕业生的自我鉴定表范文
2019/05/16 职场文书
python3实现常见的排序算法(示例代码)
2021/07/04 Python
Python3的进程和线程你了解吗
2022/03/16 Python
Windows server 2003卸载和安装IIS的图文教程
2022/07/15 Servers