废料产量utf8

2024-09-26 18:17:53 发布

您现在位置:Python中文网/ 问答频道 /正文

{1官方正在试图重写} 俄罗斯网站代码哈布拉哈伯鲁. 在

这是我的代码:

import scrapy


class DmozSpider(scrapy.Spider):
    name = 'habr'

    allowed_domains = ['habrahabr.ru']

    start_urls = [
        'http://habrahabr.ru/interesting/'
    ]

    def parse(self, response):
        yield {'title': response.xpath('//title/text()').extract()[0]}

它返回:{'title': u'\u0418\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u044b\u0435 \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u0438 / \u0425\u0430\u0431\u0440\u0430\u0445\u0430\u0431\u0440'}

当我尝试:

^{pr2}$

退货:

{'title': '\xd0\x98\xd0\xbd\xd1\x82\xd0\xb5\xd1\x80\xd0\xb5\xd1\x81\xd0\xbd\xd1\x8b\xd0\xb5 \xd0\xbf\xd1\x83\xd0\xb1\xd0\xbb\xd0\xb8\xd0\xba\xd0\xb0\xd1\x86\xd0\xb8\xd0\xb8 / \xd0\xa5\xd0\xb0\xd0\xb1\xd1\x80\xd0\xb0\xd1\x85\xd0\xb0\xd0\xb1\xd1\x80'}

我怎样才能改变这种行为?在


Tags: 代码titlescrapyu0431u0430x80xb1xb8
2条回答

如果你没搞错的话,我就把你弄糊涂了。但实际上一切都很好,你得到了正确的值。字符串刚刚自动编码为unicode。要查看可读/西里尔文值,可以执行以下操作:

#Python - 2
title = u'\u0418\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u044b\u0435 \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u0438 / \u0425\u0430\u0431\u0440\u0430\u0445\u0430\u0431\u0440'
print(title.encode('utf-8'))


#Python - 3
title = u'\u0418\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u044b\u0435 \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u0438 / \u0425\u0430\u0431\u0440\u0430\u0445\u0430\u0431\u0440'
print(title)

结果是:

^{pr2}$

转到setting.py文件并将FEED_EXPORT_ENCODING选项设置为utf-8。在

FEED_EXPORT_ENCODING = "utf-8"

这会解决你的问题。在

相关问题 更多 >

    热门问题