automator dan skrip python utf-8 output


0

Saya menulis skrip python shell dan gagal dalam alur kerja automator:

# -*- coding: utf-8 -*-

import urllib, json, os, datetime
import locale
locale.setlocale(locale.LC_ALL, 'fr_FR')

url = "http://feeds.delicious.com/v2/json/lefakir/ws?count=8"

urllib.urlopen(url)

deliciousFeed = urllib.urlopen(url)

posts = json.load(deliciousFeed)

for post in posts:
    print " * {0} : [{1}]({2})".format(post["n"], post["d"], post["u"])

Masalahnya terjadi pada post ["n"] dan post ["d"] yang memiliki simbol utf-8.

Apakah ini masalah biasa?


2
Anda dapat menambahkan rincian tentang pesan kesalahan yang Anda lihat dan bagaimana Anda menggunakan skrip ini dengan Automator.
Graham Miln

Ya, ini adalah masalah umum. UTF-8 dan Python cukup sering tidak bermain bagus.
John Keates

Maaf @ GrahamMiln ini dalam bahasa Prancis: grab.by/FrIG , tetapi Anda dapat menyalin / menempelkan kode ini di automator.
lefakir

@ JohnKeates maksud Anda dengan automator atau dengan cara yang lebih umum?
lefakir

Dengan Python dengan cara yang lebih umum. Dukungan Unicode memerlukan beberapa pekerjaan tambahan untuk bermain bagus dengan python. Saya belajar ini dengan cara yang sulit saat bekerja dengan SaltStack.
John Keates

Jawaban:


1

Aku menemukan diriku :

print " * {0} : [{1}]({2})".format(post["n"].encode( "utf-8" ), post["d"].encode( "utf-8" ), post["u"].encode( "utf-8" ))

Itu masalah unicode / utf-8 :)

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.