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

扬中炒地皮上海网络seo优化公司

扬中炒地皮,上海网络seo优化公司,多个端口网站如何做域名重定向,辽宁省建设厅官网数据的解析 解析数据的方式大概有三种 xpathJsonPathBeautifulSoup xpath 安装xpath插件 打开谷歌浏览器扩展程序#xff0c;打开开发者模式#xff0c;拖入插件#xff0c;重启浏览器#xff0c;ctrlshiftx#xff0c;打开插件页面 安装lxml库 安装在python环境中的Scri…数据的解析 解析数据的方式大概有三种 xpathJsonPathBeautifulSoup xpath 安装xpath插件 打开谷歌浏览器扩展程序打开开发者模式拖入插件重启浏览器ctrlshiftx打开插件页面 安装lxml库  安装在python环境中的Scripts下边这里就是python库的位置例如我的地址为E:\python\python3.10.11\Scripts pip install lxml -i https://pypi.tuna.tsinghua.edu.cn/simple xpath使用和基本语法 解析本地文件etree.parse( xx.html)4.etree.HTML() 解析服务器响应文件html_tree etree.HTML(response.read().decode( utf-8)4.html tree.xpath(xpath路径) xpath基本语法: 路径查询         // : 查找所有子孙节点不考虑层级关系         /  :找直接子节点 谓词查询         //div[id] 包含id属性的div         //div[idmaincontent] id maincontent的div 属性查询         //class :   返回指定标签的class属性 模糊查询         //div[contains(id,he)] 包含         //div[starts-with(idhe)] 以he开头 内容查询         //div/h1/text() text()显示内容 逻辑运算       //div[idhead and classs down] 逻辑  xpath解析本地文件  本地文件如下 !DOCTYPE html html langen headmeta charsetUTF-8/titleTitle/title /head bodyulli id00 classbeijing北京/lili上海/lili深圳/lili广州/li/ululli id11 classshenyang沈阳/lili南京/li/ul /body /html 解析本地文件 from lxml import etree# 解析本地文件 使用etree.parse tree etree.parse(Test.html)# 找到所有的ul ul_list tree.xpath(//ul)# 查找所有的li li_list tree.xpath(//ul/li)# 查找所有包含id的li id_li_list tree.xpath(//ul/li[id])# 查找id为00的li并找到内容 注意引号问题 content_list tree.xpath(//ul/li[id00]/text())# 查找id包含0的li的内容 contains_list tree.xpath(//ul/li[contains(id,0)]/text())# 获取id为11的li class属性值class li tree.xpath(//ul/li[id11]/class) print(ul_list)print(li_list)print(id_li_list)print(contains_list)print(content_list)print(li) 输出结果 [Element ul at 0x22c26c38240, Element ul at 0x22c26c38600] [Element li at 0x22c26c38640, Element li at 0x22c26c385c0, Element li at 0x22c26c38680, Element li at 0x22c26c386c0, Element li at 0x22c26c38700, Element li at 0x22c26c38780] [Element li at 0x22c26c38640, Element li at 0x22c26c38700] [北京] [北京] [shenyang]xpath解析服务器文件  使用xpath插件检查xpath路径的匹配解析定位dom from lxml import etree import urllib.request as request# 下载图片 url https://www.baidu.com/headers { User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36, }# 构建的请求对象 geneRequestrequest.Request(urlurl,headers headers) # 模拟浏览器发送请求 response request.urlopen(geneRequest) # 获取内容 content response.read().decode(utf-8)# 解析服务器文件 tree etree.HTML(content)# 找到百度一下的值 result tree.xpath(//input[idsu]/value)print(result) 输出结果:[百度一下]jsonpath jsonpath是一种信息抽取类库是从JSON文档中抽取指定信息的工具只能读取本地的json文件与xpath类似只不过对应符号不同 jsonpath安装 pip install jsonpath -i https://pypi.tuna.tsinghua.edu.cn/simple xpath和jsonpath的对应关系  XPath    JSONPath 描述/  $ 根节点.  现行节点/.or[]取子节点、、n/a取父节点Jsonpath未支持// 、、就是不管位置选择所有符合条件的条件* * 匹配所有元素节点n/a 根据属性访问Json不支持因为Json是个Key-value递归结构不需要[] [] 迭代器标识可以在里边做简单的迭代操作如数组下标根据内容选值等[] ?()支持过滤操作|[,]支持迭代器中做多选n/a()支持表达式计算()n/a分组JsonPath不支持 jsonpath解析 准备json {store: {book:[{ category: 射手,author: 鲁班七号,title: 王者荣耀,price: 8.95},{category: 打野,author: 李白,title: 大河之水天上来,price: 22.99}],bicycle: {color: red,price: 19.95}}}通过jsonpath解析json数据 import json import jsonpathobj json.load(open(test.json,r,encodingutf-8))# 查看store下的bicycle的color属性 $ 对应xpath/ colorAttr jsonpath.jsonpath(obj, $.store.bicycle.color)# 输出book节点的第一个对象 bookFirst jsonpath.jsonpath(obj, $.store.book[0])# 输出book节点中所有对象对应的属性title值 titles jsonpath.jsonpath(obj, $.store.book[*].title)# 输出book节点中所有价格小于10的对象 ?() 对应xpath [] 对应当前节点 books jsonpath.jsonpath(obj, $.store.book[?(.price10)])print(colorAttr)print(bookFirst)print(titles)print(books) 输出结果 [red] [{category: 射手, author: 鲁班七号, title: 王者荣耀, price: 8.95}] [王者荣耀, 大河之水天上来] [{category: 射手, author: 鲁班七号, title: 王者荣耀, price: 8.95}]BeautifulSoup Beautifulsoup简称bs4,Beautifulsoup和lxml一样是一个html的解析器主要功能也是解析和提取数据 缺点: 效率没有1xm1的效率高优点: 接口设计人性化使用方便 BeautifulSoup安装 pip install bs4 - i https://pypi.tuna.tsinghua.edu.cn/simple BeautifulSoup节点定位规则 soup  soup Beautifulsoup(response.read().decode()Ixml) 解析服务器文件 soup  soup Beautifulsoup(open(1.html).lxml)  解析本地文件 根据标签名查找节点         soup.a  只能找到第一个a         soup.a.namesoup.a.attrs   获取标签的属性和属性值 函数查找   .find (返回一个对象 只能找到第一个a标签)         find(a)         find(a,title名字)         find(a,class名字)   .find_all (返回一个列表 )         find all(a)          find all([a’span]) 返回所有的a和span   .select(根据选择器得到节点对象)[推荐]         element                 eg: div         class                 eg:.firstname         id                 eg:#firstname         属性选择器                 eg:li soup.select(li[class])                 eg:li soup.select(li[classhengheng])         层级选择器                 element element                           div p                                 eg:soup soup.select(a span)                 elementelement                           divp                                 eg:soup soup.select(aspan)                 element,element                           div,p                                 eg:soup soup.select(a,span) BeautifulSoup节点信息 获取节点内容         obj.string         obj.get_text()[推荐]  获取节点的属性         eg:tag find(li                 tag.name 获取标签名                 tag.attrs将属性值作为一个字典返回 获取节点属性         obj.attrs.get(title)[常用]         obj.get(title)         obj[title] BeautifulSoup解析文件 以上述xpath中的本地文件Test.html为例,上边已经写过这里直接上代码 from bs4 import BeautifulSoupsoup BeautifulSoup(open(Test.html,encodingutf-8),lxml)# 查找第一个ul print(soup.find(ul))# 查找所有的ul print(soup.find_all(ul))# 选择查找 li class为beijing的标签 print(soup.select(li[class beijing]))#层级选择查找ul下的class为beijing的li节点 nodelisoup.select(ul li[class beijing])[0]# 获取li节点内容 print(nodeli.get_text())# 获取li标签名 print(nodeli.name)#获取li的属性 print(nodeli.attrs)# 获取li的id属性 print(nodeli.attrs.get(id)) 输出结果 ul li classbeijing id00北京/li li上海/li li深圳/li li广州/li /ul [ul li classbeijing id00北京/li li上海/li li深圳/li li广州/li /ul, ul li classshenyang id11沈阳/li li南京/li /ul] [li classbeijing id00北京/li] 北京 li {id: 00, class: [beijing]} 00
http://www.dnsts.com.cn/news/79137.html

相关文章:

  • 投资公司网站模板宜昌哪里有专业做网站的
  • 个人房产信息查询网站网站优化怎样的
  • 云南网站推广网络营销策略文献综述
  • 海城网站设计潍坊 网站建设
  • 教师做网站赚钱家具设计网站推荐
  • 网站转备案龙岗做网站公司szaow
  • 江西哪里可以做企业网站厦门优化网站
  • 电子产品展示网站模板实用的wordpress插件
  • 网站开发公司创业化妆品网站 源码
  • 合肥网站推广 公司哪家好物联网对企业网站建设的要求
  • 网站开发课程设计实验报告字体设计教程网站
  • 网站搭建三部曲是什么?浙江高端建设网站
  • 网站建设的秘诀wordpress写文章怎么添加图片
  • 公司网站建设任务书太原市建设工程质量监督站网站
  • 木材网站建设哪家好百度免费咨询
  • 推广学校网站怎么做网络公司推广软文
  • 网站升级需要什么郑州机械网站建设
  • 浦东新区建设机械网站多人在线网站开发
  • 如何在自己的电脑上做网站网页qq登录手机版网址
  • 怎么在百度建个网站开发小程序需要多少钱费用
  • 海口智能建站价格网站从哪几个方面维护
  • 企业平台网站制作金沙洲网站建设工作室
  • 宣传海报在什么网站做短视频运营培训学费多少
  • 成都专业网站建设价格低重庆网站建设价格
  • 淘宝的网站怎么做的好公司注册地址异常如何处理
  • 做网站html一流的高密做网站的
  • 做博客的网站有哪些wordpress主题英文改中文
  • 北航刘禹导师做网站深圳建网站就找兴田德润
  • 青岛模板建站公司博文阅读网站建设
  • 网站建设的钱计入什么科目网站建设哪家好知道万维科技