【发布时间】:2018-01-10 22:51:39
【问题描述】:
当您尝试返回不包含 '.' 的内容时,scrapy 中的 lxml 模块可以正常工作使用 text() 函数的字符,但是当它们包含 '.'例如“11.14”,查询返回“-”。如何解决?
这是我的代码:
stock_price = hxs.xpath('//td[@id="gt1"]//text()').extract()
目标 html 如下所示:
<td id="gt1" class="txtl green">11.14</td>
只有一个gt1,它总是返回
'-'
而不是
'11.14'
为什么?来源网址为http://quote.eastmoney.com/sz000001.html
尝试了其他几个数据源,只要文本字段包含'.',它就会返回'-',否则一切正常。这是环境问题吗?
【问题讨论】:
-
源 HTML 和 URL 是什么?
-
@paultrmbrth 添加。
-
为什么你有
//text()而不是/text()? -
@JonClements 两个都试过了,没区别