我编写了以下代码
from scrapy import Selector
html = '''
<html><head></head><body><table>
<tr> <td>a1</td> <td>b1</td> </tr>
<tr> <td>a2</td> <td>b2</td> </tr>
</table></body></html>
'''
selector = Selector(text=html)
temp = selector.xpath("//td").extract()
print(temp)
并希望得到如下结果
[
'<td>a1</td>',
'<td>b1</td>',
'<td>a2</td>',
'<td>b2</td>'
]
但我得到了这个
[
'<td>a1</td> <td>b1</td> </tr>\n<tr> <td>a2</td> <td>b2</td> </tr>\n</table>\n</body>\n</html>\n',
'<td>b1</td> </tr>\n<tr> <td>a2</td> <td>b2</td> </tr>\n</table>\n</body>\n</html>\n',
'<td>a2</td> <td>b2</td> </tr>\n</table>\n</body>\n</html>\n',
'<td>b2</td> </tr>\n</table>\n</body>\n</html>\n'
]
但在xpath中使用了'/text()'
temp = selector.xpath("//td/text()").extract()
结果还好
['a1', 'b1', 'a2', 'b2']
这可能只是一个简单的问题,我只是没有找到关键。
我尝试了“extract”、“extract_first”、“get”和“getall”,但都遇到了同样的问题。
我不知道怎么了,请帮帮我
1条答案
按热度按时间xggvc2p61#
在我卸载了我的Python,然后安装了一个纯Python,我修复了这个问题...这是奇怪的。