Используйте строку unicode для выражения XPath
hxs.select(u"id('unitControl')/div[2]/table/tbody/tr[td//text()[contains(.,'Antal Badeværelser')]]/td[2]/text()").extract()
или
hxs.select(u"id('unitControl')/div[2]/table/tbody/tr[td//text()[contains(.,'Antal Badev\u00e6relser')]]/td[2]/text()").extract()
repsonse.xpath("//tr[contains(., '" + u'中文字符' + "')]").extract()
SyntaxError: Non-ASCII character ‘\xe2′ in file … on line 40,
, но не объявлено декодирование ...
Это вызвано заменой стандартных символов, таких как апостроф (') нестандартными символами, такими как кавычки (`) во время копирования.
Попробуйте отредактировать текст, скопированный из pdf.
#!/usr/bin/env python
и# -*- coding: latin-1 -*-
в начало файла, но все равно возвращает ту же ошибку. – Mace 7 October 2013 в 18:54[u'2']
. Первое решение возвращает пустой список[]
. Любые мысли о том, почему? – Mace 7 October 2013 в 19:18# -*- coding:
в исходном файле и зависит от реальной кодировки, например, я работаю только в UTF8 и обычно добавляю# -*- coding: utf-8 -*-
– paul trmbrth 7 October 2013 в 19:30