问题标签 [csquery]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - CsQuery: how to iterate over all elements?
I need to implement a function that returns the first element the has Id attribute that contains a certain string.
in HAP I used to implement it as follows:
How do I loop over all elements in CsQuery?
internet-explorer - 为什么 IE 生成的 DOM 和 CSQuery DOM 有区别?
我正在尝试使用 CSQuery 解析网站的 DOM。如果我在 IE 中打开一个站点并检查一个元素,它的 HTML 与使用 CSQuery.CreateFromUrl 方法加载的同一站点略有不同(属性的顺序和值之间的间距)。例如IE生成的div样式为“style=margin-bottom: 0.5em;” 对于相同的 div,CSQuery 的 Render 方法生成了不同的 HTML "style=margin-bottom:0.5em;" [ :] 后没有空格。
结果,当我为“div [style ='margin-left:0.5em;']”创建CSQuery选择器时,它不起作用,因为CSQuery的内部DOM在':'和'0.5'之间没有空格。
我的问题是我的应用程序用户将使用 IE 来检查 DOM 元素,因此创建 CSS 选择器来使用 CSQuery 查询 DOM。对于这种情况,我可以从代码中的选择器中删除空格,但我不想这样做,因为其他选择器之间可能存在一些其他细微差别。
那么有什么方法可以确保 CSQuery 生成与 IE 相同的 DOM 吗?我尝试过使用 CSQuery.Creat( HTML return by IE ),但不知何故 CSQuery 仍然以不同于 IE DOM 的方式格式化 HTML。
谢谢,托尼
csquery - CsQuery:获取 DomElement 的后代
我有一个有 N 个表格的网站。
Foreach 表单我想选择所有输入元素。如何在代码注释中看到 (1) + (2)?
另一个问题:为什么 DomElement.Cq() 指的是整个文档而不是当前元素?我怎样才能让它引用当前元素?
谢谢
c# - 在 CsQuery 中循环遍历 div 中的元素
我正在尝试打开一个 HTML 文件,遍历匹配特定条件的 div,然后遍历匹配这些 div 中特定条件的 p 标签。
它可以很好地选择 div,但我不确定如何在 div 中选择 p 标签。我知道这条线有问题:
但是我应该改变什么?
c# - CsQuery:在操作 InnerText 后丢失嵌套的 html-Tag
我在 C# 项目中使用 CsQuery。作为一个简单的例子,我有一个 p-Tag,其中有一个嵌套的 b-Tag:
我需要使用另一种方法 (louis()) 修改每个标签中的纯文本,即 p-Tag 和 b-Tag 内的文本:
当我尝试(仅)用新文本替换 p-Tag 内的文本时,嵌套的 b-Tag 会丢失。我该如何防止这种情况发生,我确信有更好的方法来操作嵌套元素,因为它是一个强大的框架。我只是还没有弄清楚。
c# - 从 HTML 表中存储数据的最佳方式是什么?
我目前正在使用 CsQuery 阅读 HTML 文档。该文档有几个 HTML 表格,我需要在保留结构的同时读取数据。目前,我只有一个字符串列表列表。这是一个包含行列表的表格列表,其中包含包含内容为字符串的单元格列表。
有没有更好的方法来存储这些数据,以便我可以轻松访问特定的表格、特定的行和单元格?我正在编写几个处理这个 page_tables 对象的方法,所以我需要先确定它的公式。
c# - 使用 CSQuery 解析 HTML
如何div
使用 CSQuery 通过 ID 从标签中检索值?
例如,
在这种情况下,我想获取里面的内容type
和price
.
c# - CSQuery 选择元素
我有一个html文件如下:
现在我想使用 CSQuery 将这些类型和价格提取到一个列表中,这是我正在处理的代码:
var doc = CQ.Create(htmlfile);
但是,我无法如愿获得详细信息,因为当我将其设置为 h3 时,我不确定 doc[] 的值。无法修改 html 文件。
csquery - HTML节点 InnerText 包括 CsQuery 中的锚文本
我正在使用 CsQuery 解析一些 wordpress 博客文章,对它们进行一些文本聚类分析。我想从相关<p>
节点中删除文本。
在其中一篇文章中,InnerHTML
看起来像这样:
和相应InnerText
的这样
一个 MIT Europe 项目试图通过使用两张桌子、一堆 RFID 标签和几个投影仪。
即内部文本缺少锚文本。我可以自己解析 HTML,但我希望有办法让 CsQuery 给我
一个麻省理工学院欧洲项目,试图通过使用两张桌子、一堆 RFID 标签和几台投影仪来连接两个相距甚远的亲人。
(我的斜体。)我应该怎么得到这个?
c#-4.0 - 执行存储的 CSQuery
我正在尝试创建一个爬虫,我需要能够执行不同的查询以从爬取的页面中提取不同类型的数据。我一直在研究 CsQuery 以提取数据,当我有一个简单的 CSS 选择器时,它似乎工作得很好
h4:包含('文本字符串')
我的问题是我需要能够评估如下复杂查询:
["h4:contains('textstring')"].Parent().Parent().Find("div").Find("span").Text();
我还没有找到任何好的解决方案。CsQuery 可以轻松完成上述操作,但前提是我将其编写在代码中,并且由于我希望能够执行保存在数据库中的查询,因此我需要能够动态加载和执行查询。我目前最好的想法是让递归函数一次通过一个点的语句,但这将导致对该函数的 6 次调用才能执行上述查询。似乎我最终会创建 CsQuery 中已经存在的功能,但我想不出一种更优雅的方式来解决这些问题。
任何想法将不胜感激。