Html解析方法

    初次解析html,使用是网上的第三方类;我使用的是以下三个类,将其添加到项目中:

                                                            #import "TFHpple.h"                    

                                                            #import "TFHppleElement.h"
                                                            #import "XPathQuery.h"

    添加以上三个类必须添加一个库,这个库是:libxml2.2.dylib。并且还需要设置一些路径参数,否则会一直报错;这个路径的设置,在targets中,在build settings搜索Header Search Paths,将debug和release设置不同的值;

      debug的值设置成:/usr/include/libxml2

      release的值设置成:${SDKROOT}/usr/include/libxml2

   

      将以上的设置好了以后,就是使用的时候;将#import "TFHpple.h"添加到解析html的类中,再写解析方法;

一般思路如下:

      1.首先将网页的html转换成oc能够认识的NSString数据;用到的方法如下:

            NSString *dataString = [NSString stringWithContentsOfURL:[NSURL URLWithString:htmlString] encoding:NSUTF8StringEncoding error:nil];  //htmlString是html网页的地址

      2.将dataString转换成NSData,给TFHpple类用

            NSData *htmlData = [dataString1 dataUsingEncoding:NSUTF8StringEncoding];

       3.设置html中节点,根据节点取值,例如<p>.....</p>,可以用节点来取值;

                如NSString *nodeString = @"//p";

        使用htmlData和nodeString,解析自己需要的值:

                TFHpple *xpathParser = [[TFHpple alloc] initWithHTMLData:htmlData];
                NSArray *elements  = [xpathParser searchWithXPathQuery:nodeString];  //这个数组中就有需要的值

(TFHppleElement中提供很多方法,可以用这些方法获取elements的值,如- (NSArray *) children;)


        demo链接:http://code4app.com/ios/%E8%A7%A3%E6%9E%90HTML/5167ca396803faf447000002


转载于:https://my.oschina.net/hong90/blog/189765

Python学习之HTML解析方法 BeautifulSoup用NavigableString类来封装Tag中的字符串,一个NavigableString字符串与Python中的Unicode字符串相同,通过unicode()方法可以直接将NavigableString对象转换成Unicode字符串。.strings---->主要应用于Tag中包含多个字符串的情况,可以进行循环遍历。print(soup.prettify())------>输出soup对象的内容。.stripped_string----->可以去掉字符串中包含的空格或空行。 阅读详情

相关推荐

解析带有html标签的json数据

解析带有html标签的json数据

4.2.常用的HTML解析方法

lxml速度较快,支持XML和HTML的解析和处理,同时也支持XPath查询,适合处理大型文档或复杂的解析任务。总的来说,Beautiful Soup 提供了一个简单而强大的工具,用于解析和提取 HTML 或 XML 文档中的数据。Beautiful Soup 将 HTML 或 XML 文档解析为一个对象化的文档树结构,使用户可以方便地遍历和操作文档中的元素、标签和内容。Beautiful Soup提供了简洁明了的API,可以通过标签名、属性、CSS选择器等方式来定位和提取HTML中的元素和内容。

sty3318的博客 2994

C++版Cesium实战:从OpenGL到3DTiles的全流程开发指南

本文提供了一份C++版Cesium全流程开发指南,详细阐述了如何利用OpenGL和Qt从零构建高性能、可离线部署的三维GIS应用。内容涵盖开发环境搭建、OpenGL渲染引擎初始化、Cesium核心坐标系与场景管理移植,并重点解析了3DTiles数据的解析、异步加载与渲染优化等硬核实战技术,旨在帮助开发者实现与现有C++工业软件的深度集成。

weixin_28077113的博客 165

解析 html 的几种操作方式

解析html是爬虫后的重要的一个处理数据的环节。一下记录解析html的几种方式。 先介绍基础的辅助函数,主要用于获取html并输入解析后的结束 #把传递解析函数,便于下面的修改 def get_html(url, paraser=bs4_paraser): headers = { 'Accept': '*/*', 'Accept-Encoding': ...

极客点儿 5576

告别“盲开”:手把手教你用MCU内置比较器搞定BLDC无感方波启动(附代码片段)

本文详细介绍了如何利用MCU内置比较器实现BLDC无感方波启动,解决传统无传感器控制中的'盲开'问题。通过虚拟中性点电路设计和三段式启动流程,结合反电动势检测和过零检测技术,提供了一套经济高效的解决方案,并附有可直接移植的代码片段,助力工程师快速实现可靠的无感控制。

weixin_33694172的博客 503

Vivado时序违约小结

目录1. setup time违约1.1 逻辑级数太高1.2 Fanout太大2. hold time 违约2.1 异步信号处理导致hold time违约 1. setup time违约 建立时间是工程设计中最常遇到的问题了。一般说来,导致建立时间违例主要有两个原因:逻辑级数太大或者扇出太大,当然也可以尝试通过降频来解决建立时间违约。 1.1 逻辑级数太高 Levels指的是逻辑级数logic level,一个logic level的延迟对应的是一个LUT和一个Net的延迟,对于不同的器件,不同频率的设计能

mu_guang_的博客 7156

HTML详解

HTML 概念:HTML(Hypertext Markup Language ) 超文本标记语言。 HTML 不是一种编程语言,而是一种标记语言。 Html主要用来描述网页中所需要的组件,例如:文本框、表格、图片、视频等等,也对网页进行排版。 HTML的源文件,称为“网页”,通常以.html或者.htm为结尾。 可以使用任意文本编辑器编辑,需要使用浏览器执行。 访问:https://www.w3school.com.cn/ 1 标记(标签)基本语法 1.定义标签 HTML语言以标签形式体现,这些标签通常

weixin_40055163的博客 1万+

PCB激光直接成像(LDI)设备技术解析与优化方案

激光直接成像(LDI)是PCB制造中的关键数字化工艺,通过激光束直接在基板上形成电路图案。其核心技术在于高精度光学系统与智能控制算法的结合,工作精度可达微米级。在HDI板、柔性电路等高端PCB制造中,LDI技术能显著提升线宽精度和层间对位准确性。当前行业面临材料适配性、热变形控制等挑战,动态能量补偿、多波长曝光等创新方案正在突破这些瓶颈。随着模块化设计、预测性维护等工程实践的普及,LDI设备综合效率持续提升,为5G、汽车电子等领域的精密电路生产提供关键技术支撑。

weixin_29168393的博客 393

爬虫-数据解析

在上一节中, 我们基本上掌握了抓取整个网页的基本技能. 但是呢, 大多数情况下, 我们并不需要整个网页的内容, 只是需要那么一小部分. 怎么办呢?这就涉及到了数据提取的问题.本课程中, 提供三种解析方式:re解析 (必修)bs4解析xpath解析(必修)以上三种方案都可以从HTML中提取到你需要的内容, 这三种方式可以混合进行使用, 完全以结果做导向, 只要能拿到你想要的数据. 用什么方案并不重要. 当你掌握了这些之后. 再考虑性能的问题.

zhangjin1441的博客 684

Ansys Circuit新手必看:IBIS模型导入时,Pin Import和Buffer Import到底怎么选?

本文详细解析了Ansys Circuit中IBIS模型导入时Pin Import与Buffer Import的选择策略,帮助SI/PI工程师根据仿真需求做出正确决策。通过对比两种方式的特性差异和应用场景,提供实用的选择指南和性能优化建议,提升信号完整性仿真效率。

weixin_26846533的博客 261

手把手教你用nRF52832+RFX2401C设计远距离蓝牙模块(附完整原理图/PCB文件)

本文详细介绍了如何利用nRF52832 SoC与RFX2401C射频前端芯片设计远距离蓝牙模块,涵盖芯片选型、阻抗匹配、PCB布局等关键环节。通过实战指南和完整原理图/PCB文件,帮助工程师实现输出功率可达20dBm的蓝牙模块设计,适用于智能家居、运动追踪等物联网应用。

weixin_29214199的博客 287

jquery的text()和html()方法区别?如何正常解析html标签,浏览器不解析html标签代码的处理方法

text()方法会把包含的字符转义处理,html()则不会.所谓转义就是字符的另一种显示方法,例如"&lt;" 显示成 "<",这就是转义了,其中的&lt;就是<的转义字符.还有很多可以转义的字符,可以搜索下看看. 下边是项目中用到的2个语句:span中包含了jquery的语句输出结果. 1. $('.title').text("<img src=" ">"); 显示结果为<img src=" ">,这里的<img src=" "..

QT5 + PYQT5 + PYTHON3.3.2 最强组合 无敌了 797

避坑指南:Qt5.14.2 ARM交叉编译中那些你可能遇到的‘坑’及解决方案

本文深度解析了Qt 5.14.2在ARM架构上进行交叉编译的完整流程与常见难题。重点阐述了如何精准匹配交叉编译器与目标板环境、正确配置sysroot以及使用configure参数的艺术,并针对编译过程中的头文件缺失、链接错误等典型“坑”提供了经过验证的解决方案,旨在帮助开发者成功构建适用于嵌入式设备的Qt运行时库。

weixin_29279101的博客 353

【Python 解析 HTML 的常用方法及工具】

Python解析HTML的常用方法包括:1)BeautifulSoup(易用,依赖解析器如lxml);2)lxml(高性能,支持XPath/CSS);3)PyQuery(类jQuery语法);4)html.parser(标准库,功能有限);5)正则表达式(简单但易出错)。推荐BeautifulSoup或lxml处理复杂需求,注意编码和动态网页问题。正则表达式仅适合简单场景。

qq_33764107的博客 396

C++ getline函数详解与示例代码

每次调用函数时,会读取一行文本,并将其存储在字符串对象中。在循环中,我们检查读取到的文本是否为空行,如果是则跳出循环,否则输出读取到的文本。这个函数在处理用户输入、文件读取等场景中非常有用,希望能对您的C++编程有所帮助。函数是一个常用的字符串输入函数,可以用于从输入流中读取一行文本。首先,我们输出提示信息,要求用户输入一行文本。函数会等待用户输入,并将输入的文本存储在。函数从输入流中读取一行文本,并将其存储在字符串对象。这样,当用户输入制表符时,函数会停止读取。函数的用法,并提供相应的示例代码。

LogicGuruX的博客 828

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Python之Html解析方法

一、强大的BeautifulSoup:BeautifulSoup是一个可以从html或xml文件中提取数据的Python库。它能够通过你喜欢的转换器实现惯用的文档导航、查找、修改文档的方式。在Python开发中,主要用的是BeautifulSoup的查找提取功能,修改功能很少使用 1、安装BeautifulSoup pip3 install beautifulsoup4 2、安装第三方htm...

披风秃头侠的博客 8084

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

BeautifulSoup实战:HTML解析的N种方法

《BeautifulSoup实战指南》摘要:本文介绍了Python爬虫工具BeautifulSoup的核心用法与实战技巧。作为HTML解析利器,BeautifulSoup以简单易用、容错性强著称,特别适合处理不规范网页。文章对比了多种解析工具,详细讲解了环境配置、6种核心解析方法(标签选择器、find/find_all、CSS选择器、正则表达式等),并通过新闻抓取案例演示实战应用。重点推荐使用lxml解析器,在90%场景下都能提供最佳性能。附有代码示例和解析器对比表格,是爬虫入门和进阶的实用指南。

张三的博客 1402

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

python解析HTML的方法——HTMLParser

HTMLParser是python用来解析html的模块。它可以分析出html里面的标签、数据等等,是一种处理html的简便途径。 HTMLParser采用的是一种事件驱动的模式,当HTMLParser找到一个特定的标记时,它会去调用一个用户定义的函数,以此来通知程序处理。它 主要的用户回调函数的命名都是以handler_开头的,都是HTMLParser的成员函数。当我们使用时,就从HTMLPar

陈建虹(python) 5031

Jsoup解析HTML常用方法

使用Jsoup提取HTML纯文本 Document document = Jsoup.parse(html); document.text() 获取第一个a标签属性href的值 node.select("a").first().attr("href") Elements titleEle = node.select(".post_item_body a[class='titlelnk']"); 通过标签title获取对象 document.getElementsByTag("title".

瑶山的博客 1321

BeautifulSoup解析 HTML标签Tag及属性attrs的常用方法

BeautifulSoup 对象表示整个解析树或文档,可以用来遍历、搜索和操作文档

book_dw5189的博客 4270

iOS开发中的Html解析方法

本文转载至http://mobile.51cto.com/iphone-429980.htm 本文作者为大家介绍了在iOS开发中的Html解析方法,并同时提供了Demo代码的下载链接,Demo 解析了某个网站(具体可在代码中查看)的html网页,提取了图片以及标题。 AD:2014WOT全球软件技术峰会北京站 课程视频发布 初次解析html,使用是网上的...

a1311010193的博客 123

react解析html字符串方法

react解析html字符串方法

congxue666的博客 2882

Python之Html解析方法(beautiful soup)

Python之Html解析方法(beautiful soup) BeautifulSoup的安装及介绍 官方给出的几点介绍: Beautiful Soup提供一些简单的、python式的函数用来处理导航、搜索、修改分析树等功能。它是一个工具箱,通过解析文档为用户提供需要抓取的数据,因为简单,所以不需要多少代码就可以写出一个完整的应用程序。 Beautiful Soup自动将输入文档转换为Unico...

xbean1028的博客 3962
上一篇: UILabel换行设置
下一篇: 启动画面的操作
cheping3971
博客等级 码龄10年 0粉丝 0原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值