- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我需要使用 HtmlAgilityPack 和 C# 解析此 html 代码。我可以得到div class="patent_bibdata"节点,但我不知道如何循环遍历子节点。
在此示例中有 6 个 href,但我需要将它们分为两组;发明人,分类。我对后两个不感兴趣。该 div 中可以有任意数量的 href。
正如您所看到的,在两个组之前有一个文本说明了 href 是什么。
代码片段
HtmlWeb hw = new HtmlWeb();
HtmlDocument doc = m_hw.Load("http://www.google.com/patents/US3748943");
string xpath = "/html/body/table[@id='viewport_table']/tr/td[@id='viewport_td']/div[@class='vertical_module_list_row'][1]/div[@id='overview']/div[@id='overview_v']/table[@id='summarytable']/tr/td/div[@class='patent_bibdata']";
HtmlNode node = m_doc.DocumentNode.SelectSingleNode(xpath);
那么你会怎么做呢?
<div class="patent_bibdata">
<b>Inventors</b>:
<a href="http://www.google.com/search?tbo=p&tbm=pts&hl=en&q=ininventor:%22Ronald+T.+Lashley%22">
Ronald T. Lashley
</a>,
<a href="http://www.google.com/search?tbo=p&tbm=pts&hl=en&q=ininventor:%22Ronald+T.+Lashley%22">
Ronald T. Lashley
</a><br>
<b>Current U.S. Classification</b>:
<a href="http://www.google.com/url?id=3eF8AAAAEBAJ&q=http://www.uspto.gov/web/patents/classification/uspc084/defs084.htm&usg=AFQjCNEZRFtAyKTfNudgc-XVt2-VboD77Q#C084S31200P">84/312.00P</a>;
<a href="http://www.google.com/url?id=3eF8AAAAEBAJ&q=http://www.uspto.gov/web/patents/classification/uspc084/defs084.htm&usg=AFQjCNEZRFtAyKTfNudgc-XVt2-VboD77Q#C084S31200R">84/312.00R</a><br>
<br>
<a href="http://www.google.com/url?id=3eF8AAAAEBAJ&q=http://patft.uspto.gov/netacgi/nph-Parser%3FSect2%3DPTO1%26Sect2%3DHITOFF%26p%3D1%26u%3D/netahtml/PTO/search-bool.html%26r%3D1%26f%3DG%26l%3D50%26d%3DPALL%26RefSrch%3Dyes%26Query%3DPN/3748943&usg=AFQjCNGKUic_9BaMHWdCZtCghtG5SYog-A">
View patent at USPTO</a><br>
<a href="http://www.google.com/url?id=3eF8AAAAEBAJ&q=http://assignments.uspto.gov/assignments/q%3Fdb%3Dpat%26pat%3D3748943&usg=AFQjCNGbD7fvsJjOib3GgdU1gCXKiVjQsw">
Search USPTO Assignment Database
</a><br>
</div>
想要的结果发明家组 =
<a href="http://www.google.com/search?tbo=p&tbm=pts&hl=en&q=ininventor:%22Ronald+T.+Lashley%22">
Ronald T. Lashley
</a>
<a href="http://www.google.com/search?tbo=p&tbm=pts&hl=en&q=ininventor:%22Ronald+T.+Lashley%22">
Thomas R. Lashley
</a>
分类组
<a href="http://www.google.com/url?id=3eF8AAAAEBAJ&q=http://www.uspto.gov/web/patents/classification/uspc084/defs084.htm&usg=AFQjCNEZRFtAyKTfNudgc-XVt2-VboD77Q#C084S31200P">84/312.00P</a>;
<a href="http://www.google.com/url?id=3eF8AAAAEBAJ&q=http://www.uspto.gov/web/patents/classification/uspc084/defs084.htm&usg=AFQjCNEZRFtAyKTfNudgc-XVt2-VboD77Q#C084S31200R">84/312.00R</a>
我正在尝试抓取的页面:http://www.google.com/patents/US3748943
//安德斯
PS!我知道在这个页面中发明者的名字是相同的,但大多数都是不同的!最佳答案
XPATH 是你的 friend !像这样的东西会给你发明者的名字:
HtmlWeb w = new HtmlWeb();
HtmlDocument doc = w.Load("http://www.google.com/patents/US3748943");
foreach (HtmlNode node in doc.DocumentNode.SelectNodes("//div[@class='patent_bibdata']/br[1]/preceding-sibling::a"))
{
Console.WriteLine(node.InnerHtml);
}
关于c#-4.0 - 循环遍历 HtmlAgilityPack 创建的节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11867619/
HTML En son haber 01:029.023 代码 Dim request2 As HttpWebRequest = WebRequest.C
我正在使用 HtmlAgilityPack。我使用以下字符串创建一个 HtmlDocument 和 LoadHtml: OneTwo 这会做一些意想不到的事情。首先,它给出了两个解析器错误,EndTa
我需要从博客中获取一些帖子。一切都很顺利,直到我想获得帖子创建日期。它的 DOM 树是: div class="stories-feed__container" -> article -
我需要获取网页上的总字数。这个方法返回的数字是336。但是当我从wordcounter.net手动查看时,大约是1192个字。我怎样才能得到文章的字数? int kelimeSayisi()
使用 HtmlAgilityPack 和 c# 4.0 如何确定页面是否被重定向。我正在使用这种方法来加载页面。 HtmlDocument hdMyDoc = hwWeb.Load(srPageUrl
我正在尝试使用 HtmlAgilityPack 获取计时器的值,但是当我通过元素 ID 获取内部文本时,它会返回 --:--:-- 既然使用了AJAX,有什么方法可以获取时间值吗? 最佳答案 通过使用
jQuery改变后是否可以获取HtmlDocument?例如,在下次更改后通过“myId”获取元素。 js代码: $(document).ready(function () { $("#myC
我有以下 html 元素: MyString buttonText So,
我的目标是从网站上读出特定的容器/标签/属性(出于我的爱好),一切正常,除了为我的值(value)获取德语翻译(我通常在浏览器中手动打开网站时得到(可能是网站从用户代理获取特定信息),但如果我使用我的
是否可以在使用 HTMLAgilityPack 时忽略解析错误? 最佳答案 作为suggested by TrueWill ,您可能需要先清理 HTML,然后再尝试使用 HTMLAgilityPack
我正在使用 HtmlAgilityPack 在 C# Asp.Net 中执行 Scraping,到目前为止,我在从多个 Web 执行 Scratch 时没有遇到问题,但是,尝试弹出以下代码时出现错误
我在服务器上的解析器中使用 HTMLAgilityPack,但我正在解析的其中一个网站出现问题:每天早上 6 点左右,他们往往会关闭服务器进行维护,这会抛出 HTMLWeb 的 Load() 方法,并
这是我的html代码。如何在每个 div 标签后选择第一个链接(a) 我试过只使用一个斜杠://div[@class="test
我有异常抛出 gzip 不受支持。这就是我使用加载页面的全部内容,关于如何允许 gzip 的任何想法? HtmlWeb hwObject = new HtmlWeb();
我正在 SharePoint Foundation 中开发 C# ASP .NET WebPart。 一切正常,现在我想解析一个 HTML 页面以获取所有 ImagePaths 并将图像保存在 HD/
我一直在尝试使用 Html Agility Pack 在 Html 中附加一个新节点。 这是我的示例 Html
我想用这段代码解析一个 html 文件: ...... 问题是 HtmlAgilityPack 会自动关闭 div 结束标记之前的表单标记: ......所以当我解析表单时,一些表单元素丢失了。 (我
一般来说,我经常处理 html,并且总是使用 Regex 来获取结果。不过,每次我寻求帮助时,每个人都建议使用 HTML 解析器,例如 HTMLAgilitypack。 我刚刚试过了,伙计,现在对我来
当我删除一个节点(使用 keepGrandChildren )时,该节点同时包含文本和子节点,文本将一直推到子节点之后,而不是留在其原始位置。 示例: var doc = new HtmlDocume
我使用这段代码来获取页面信息但是现在站点已经更改并且我的应用程序返回空错误。 HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDo
我是一名优秀的程序员,十分优秀!