ScrapySplash 找不到类名中带有“:”的元素
ScrapySplash cannot find elements with ":" in classname
我将 Srcapy 与 Splash 一起使用,以使用名为 IFaces 的 java 框架来抓取网站。该框架使用诸如“_id35:_id48”之类的值作为元素的 ID 和类名。
当我使用 Splash 抓取网站并尝试 select 具有此值的元素时,我得到了 DOM 异常 12,可能是因为值中使用了“:”字符。我已经尝试转义该值(即:“_id35a_id48”和_id35a _id48)但仍然出现相同的错误。
我还有其他方法可以 select 这些元素(比如 XPath)吗?
您可以在 Lua 脚本中使用 CSS select 或 splash:select,这样您就可以 select 通过 class像这样命名:
splash:select('.element')
或像这样通过 id:
splash:select('#_id35:_id48')
看看CSS selector documentation,我相信你会找到一种方法来实现你想要的。
查看 ,了解有关如何将 js 与 splash 结合使用的一些示例。
我将 Srcapy 与 Splash 一起使用,以使用名为 IFaces 的 java 框架来抓取网站。该框架使用诸如“_id35:_id48”之类的值作为元素的 ID 和类名。
当我使用 Splash 抓取网站并尝试 select 具有此值的元素时,我得到了 DOM 异常 12,可能是因为值中使用了“:”字符。我已经尝试转义该值(即:“_id35a_id48”和_id35a _id48)但仍然出现相同的错误。
我还有其他方法可以 select 这些元素(比如 XPath)吗?
您可以在 Lua 脚本中使用 CSS select 或 splash:select,这样您就可以 select 通过 class像这样命名:
splash:select('.element')
或像这样通过 id:
splash:select('#_id35:_id48')
看看CSS selector documentation,我相信你会找到一种方法来实现你想要的。
查看