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

做网站 服务器价格上海搜索引擎优化1

做网站 服务器价格,上海搜索引擎优化1,长治哪里做网站,东莞建筑公司前言 其实大家应该都有所困扰,就是爬虫中的解析。无论是解析HTML还是解析JSON 这里给大家推荐个很好用的方法。 bs4jsonpath 原理 将 HTML 转换为 JSON 的核心在于解析 HTML 的结构化标签并映射为 JSON 的键值对格式。 HTML 到 JSON 的转换本质上是结构化标记语…

前言

其实大家应该都有所困扰,就是爬虫中的解析。无论是解析HTML还是解析JSON

这里给大家推荐个很好用的方法。

bs4+jsonpath

原理

将 HTML 转换为 JSON 的核心在于解析 HTML 的结构化标签并映射为 JSON 的键值对格式。

HTML 到 JSON 的转换本质上是结构化标记语言到数据交换格式的映射,其核心逻辑包含:

  1. DOM 树解析:通过解析器将 HTML 标签、属性和文本内容转化为树形结构(如 tag: “div”, attributes: {“class”: “container”}, children: […])
  2. 递归遍历:深度优先遍历 DOM 节点,将每个节点及其子节点转换为嵌套的 JSON 对象
  3. 类型处理:区分元素节点(ELEMENT_NODE)和文本节点(TEXT_NODE),后者直接存储为字符串
  4. 属性提取:将 HTML 标签属性(如 id、class)转换为 JSON 对象的键值对

安装

pip install bs4

pip install jsonpath

使用

from bs4 import BeautifulSoup
import jsondef html_to_json(html):soup = BeautifulSoup(html, 'html.parser')return parse_node(soup)def parse_node(node):if node.name is None:  # 文本节点return node.text.strip()result = {"tag": node.name}if node.attrs:result["attrs"] = node.attrsif node.contents:result["children"] = [parse_node(child) for child in node.contents if child.name or child.text.strip()]return result

没错 就是短短的这么几行代码 (可能还是有问题 毕竟是自写+GPT)

这里已经转换成JSON了。但是还远远不够。这里又要使用另一个库

jsonpath

没错,之前这个库可能大家用法只会简单的,但其实结合这个可以通过节点 像AST一样去解析代码。

面对又臭又长的屎山 出值,何尝不是一种乐趣呢?

这里给大家写个通用例子吧。

获取页面中所有的图片

$..*[?(@.tag == 'img')].attrs.src

获取h1标题

$..*[?(@.tag == 'h1').children[0]]

提取内容

$..[?(@.tag == 'div' && @.attrs['class'] =~ /.*content.*/i && !@.children[?(@.tag == 'em')]
)]

结语

只能说偶尔发现的小TIPS ,写多了估计也会腻。适合一些层级比较复杂的网站。理论上可以通杀一些网站的解析~~~

更多的还是依靠jsonpath的解析能力。偶尔水一篇吧 。

http://www.dtcms.com/wzjs/92871.html

相关文章:

  • 烟台网站建设比较大的收录优美图片手机版
  • 微信网页网站怎么做广州疫情防控措施
  • 网站开发软件测试报告网站源码建站
  • 最专业微网站建设公司百度应用市场app下载
  • 织梦做视频网站可以吗seo培训多少钱
  • 广州网站建设外包建设推广厦门网络推广
  • 金融行业网站开发长春网络科技公司排名
  • 佛山做网站公司有哪些seo待遇
  • 赣州网站建设优化服务百度秒收录技术
  • 美国新闻网站中文版小红书推广怎么收费
  • 漯河网站推广多少钱地推接单平台
  • 重庆电子工程职业学院教育网广东搜索引擎优化
  • 南阳教育论坛网站建设软文推广的好处
  • 鸿铭物流网络建站广州网络seo公司
  • 自学网站制作教程网站服务器
  • 装修网站vr全景图怎么做十大经典案例
  • 自助建微网站优化网站页面
  • 网站中的滑动栏怎么做的宁波seo快速优化平台
  • 比较著名的网站用javaweb做的b2b免费发布网站大全
  • 网站制作真人游戏娱乐平台怎么做自己怎么制作一个网站
  • 做网站与做软件成都百度seo推广
  • 邯郸做网站的公司哪家好免费软件下载网站有哪些
  • 信誉好的广州外贸网站关键词优化包含
  • 网站500m空间价格最近疫情最新消息
  • 网站做友情链接的用途太原关键词优化服务
  • 网站做产品的审核工作深圳网络推广服务是什么
  • 泉州手机模板建站人员优化是什么意思
  • 市场营销四大分析方法流程优化的七个步骤
  • 仿糗事百科网站青岛百度快速排名优化
  • web培训机构关键词优化排名平台