python - Scrapy全局名称子字符串未定义

标签 python xpath scrapy substring

我正在尝试使用 Scrapy 提取特定的文本片段。

这是我的代码

        item['movie_director'] = movie.xpath(substring-before(substring-after(span[1]/text(), 'Director :  '), '.')).extract()

格式为: 导演:导演姓名。

我只想提取这个: 董事姓名

但是当我设置爬虫时,出现此错误:全局名称“substring”未定义。

我认为包含了子字符串的使用。有没有办法导入这个?

感谢您的帮助。

最佳答案

您的xpath表达式需要是字符串,即将其放在引号下:

item['movie_director'] = movie.xpath("substring-before(substring-after(span[1]/text(), 'Director :  '), '.')").extract()

关于python - Scrapy全局名称子字符串未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29625161/

相关文章:

python - 当 Ubuntu 21.10 xrdp 上的远程桌面时,tkinter 与 sudo 行为不端

python - Python 中的列表理解以计算列表的最小值和最大值

jquery - 使用 Flask 执行 AJAX POST,然后执行 GET

python - 将边界条件应用于 Keras 输出

php - 具有 XPath 编码问题的 DOMDocument。 [?] 很多测试

mongodb - 如何使用docker-compose在pycharm中创建我的scrapy开发环境

python - 蜘蛛不抓取页面/写作

python - 使用 scrapy 抓取特定的表格元素

python - 错误 : "' str' object is not callable"on any use of Xpath

xml - 什么是xm-replace_text?