Scrapy输出提要国际Unicode字符(例如,日语字符)

| 我是python和scrapy的新手,并且正在关注dmoz教程。作为本教程建议的起始URL的一个较小变体,我从dmoz示例站点中选择了一个日语类别,并注意到最终得到的feed导出显示的是unicode数字值,而不是实际的日语字符。 似乎我需要以某种方式使用TextResponse,但是我不确定如何使我的蜘蛛使用该对象而不是基本的Response对象。 如何修改代码以在输出中显示日语字符? 如何摆脱方括号,单引号和包裹输出值的“ u”? 最终,我想说说 オンラインショップ(这些是日本字符) 而不是当前的输出 [u \'\\ u30aa \\ u30f3 \\ u30e9 \\ u30a4 \\ u30f3 \\ u30b7 \\ u30e7 \\ u30c3 \\ u30d7 \'](Unicode) 如果您查看我的屏幕截图,它对应于单元格C7(文本标题之一)。 这是我的蜘蛛(与本教程中的蜘蛛相同,不同的是start_url):
from scrapy.spider import BaseSpider
from scrapy.selector import HtmlXPathSelector

from dmoz.items import DmozItem

class DmozSpider(BaseSpider):
   name = \"dmoz.org\"
   allowed_domains = [\"dmoz.org\"]
   start_urls = [
       \"http://www.dmoz.org/World/Japanese/\"
   ]

   def parse(self, response):
       hxs = HtmlXPathSelector(response)
       sites = hxs.select(\'//ul/li\')
       items = []
       for site in sites:
           item = DmozItem()
           item[\'title\'] = site.select(\'a/text()\').extract()
           item[\'link\'] = site.select(\'a/@href\').extract()
           item[\'desc\'] = site.select(\'text()\').extract()
           items.append(item)
       return items
settings.py:
FEED_URI = \'items.csv\'
FEED_FORMAT = \'csv\'
输出截图: http://i55.tinypic.com/eplwlj.png(对不起,我没有足够的SO点来发布图片)     
已邀请:
        从页面抓取文本时,它以Unicode格式存储。 您要做的是将其编码为类似UTF8的格式。
unicode_string.encode(\'utf-8\')
同样,当使用选择器提取文本时,即使只有一个结果,该文本也存储在列表中,因此您需要选择第一个元素。     

要回复问题请先登录注册