2017-02-10 4 views
0

ich ein Problem habe, wenn ich mein Skript erhaltenpython2.7 mysql arabische Zeichen zeigen wie XD9 x88 XD9 x88 xd8 xac xd8 XAF xd8 xa7 XD9 x84

from bs4 import BeautifulSoup 
import html 
import chardet 
import time 
start_time = time.time() 
import MySQLdb 
import MySQLdb.converters as conv 
import MySQLdb.constants as const 
import datetime 
# connect 
db = MySQLdb.connect(host="localhost", user="985632", use_unicode=True, passwd="azerty", 
db="bog_ch" , charset='utf8', init_command='SET NAMES UTF8') 
cursor = db.cursor() 

# execute SQL select statement 
query = "SELECT * FROM articles Limit 5" 
cursor.execute(query) 
a = [] 
# commit your changes 
numrows = int(cursor.rowcount) 
rows = [x for x in cursor ] 
for i in rows: 
    for b in i: 
     a.append(b) 
print a   

und ich dieses

</span></p>\r\n<p class="a" style="text-align: right;" dir="RTL"><span style="font-size: 21px;" lang="AR-SY">\u0648\u0648\u062c\u062f \u0627\u0644\u0628\u0627\u062d\u062b\u0627\u0646 \u0623\u0646 &ldquo;\u0641\u0627\u064a\u0628\u0631&rdquo; \u062a\u0642\u0648\u0645 \u0628\u062a\u062e\u0632\u064a\u0646 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a \u0641\u064a \u062e\u0648\u0627\u062f\u0645\u0647\u0627 \u0644\u0645\u062f\u0629 \u0623\u0633\u0628\u0648\u0639 \u0639\u0644\u0649 \u0627\u0644\u0623\u0642\u0644. \u0648\u0623\u0636\u0627\u0641 \u0623\u062d\u062f\u0647\u0645\u0627 \u0623\u0646\u0647 \u0644\u0627 \u064a\u0648\u062c\u062f \u0623\u0633\u0644\u0648\u0628 \u0645\u0635\u0627\u062f\u0642\u0629 \u0645\u0633\u062a\u062e\u062f\u0645\u060c \u0645\u0627 \u064a\u0639\u0646\u064a \u0623\u0646 \u0628\u0625\u0645\u0643\u0627\u0646 \u0627\u0644\u062c\u0645\u064a\u0639 \u0627\u0644\u0648\u0635\u0648\u0644 \u0625\u0644\u0649 \u0647\u0630\u0647 \u0627\u0644\u0631\u0648\u0627\u0628\u0637 \u0648\u0627\u0644\u0646\u0638\u0631 \u0625\u0644\u0649 \u062a\u0644\u0643 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a \u0648\u0627\u0644\u062d\u0635\u0648\u0644 \u0639\u0644\u064a\u0647\u0627 \u0648\u0627\u0644\u0642\u064a\u0627\u0645 \u0628\u0645\u0627 \u064a\u0634\u0627\u0621.</span></p>', u'1', u'', None, datetime.datetime(2015, 6, 9, 0, 36, 30), 9L, 0L, 0L, 1L, u'viber.png', u'User GEEKS', 1L, u'', u'', u''] 

ich es arabicum konvertieren möchten

wie

أفضل المهووسين ايفون سامسونغ غوغل 7

Antwort

0

diese sieht wie ein Unicode-Anzeigeproblem aus. Stellen Sie zunächst sicher, dass die von Ihnen verwendete IDE arabische Zeichen unterstützt (das Beste, soweit ich weiß, ist Spyder). Zweitens, versuchen Sie dies in Python 3.5, es behandelt Unicode viel effektiver.

2

Sie drucken die Liste a. Dies wird nicht funktionieren, und in jedem Fall wollten Sie wahrscheinlich nicht alle diese zusätzlichen Crud auf Ihre Webseite (9L, 0L, 0L, 1L, u'viber.png', ... etc ...)

ausgeben Wenn Sie die tatsächlichen Unicode-Zeichen möchten erscheinen, drucken Sie einfach die String-Elemente.

Zum Beispiel:

>>> my_list = [u'\u0648\u0648\u062c\u062f \u0627\u0644\u0628\u0627' \ 
       u'\u062d\u062b\u0627\u0646', 123] 
>>> print my_list  # <- this won't work 
[u'\u0648\u0648\u062c\u062f \u0627\u0644\u0628\u0627\u062d\u062b\u0627\u0646', 123] 
>>> print my_list[0]  # <- but this will 
ووجد الباحثان 
Verwandte Themen