0

jsdom で複数行の属性の値を取得することは可能ですか (Node.js+JQuery で使用します)?

スクレイピングするサイトには、次の HTML が含まれています。

<li><a data-title="<strong>hello world
this is a test</strong>" href="example.org</strong>">A link</a></li>

残念ながら、これはに解析されます

<li><a data-title="data-title"><strong>hello world
this is a test</strong>' href="example.org">A link</a></li>

そのため、たとえば JQuery: を介して title と href 属性を抽出できません$("a").attr("data-title")

何か案は?

4

1 に答える 1

0

はい、それはjsdomパーサーのバグです。これは、完全な HTML5 準拠のパーサーを使用していないためです。そのようなバグがまだ解決されていないことがわかります:

  1. https://github.com/tmpvar/jsdom/issues/494
  2. https://github.com/tmpvar/jsdom/issues/482

スクレイピングにチェリオを試すことができます。

于 2013-03-17T07:04:13.443 に答える