首页 > 解决方案 > html标签外的Scrapy选择器

问题描述

我有一个特殊情况,脚本标签放在 html 标签之外:

<html>
....
</html>

<script>data</script>

css 和 xpath 选择器都没有找到这个脚本标签,我发现的唯一方法是使用 response.text ,但是它会响应一个巨大的字符串,我无法使用选择器 re() 函数对其进行正则表达式操作。

有没有办法在 html 标签之外添加 CSS 或 Xpath 标签?

我试过了

response.css('script') 

但只考虑html标签内的脚本标签

谢谢

标签: xpathscrapycss-selectors

解决方案


更正:

css 选择器不考虑 HTML 之外的标签,xpath 考虑。

我使用了一些条件来过滤标签:

response.xpath('//script[contains(., "function SelectItem()")]')

推荐阅读