mirror of
https://github.com/ankitects/anki.git
synced 2025-09-25 01:06:35 -04:00
Merge pull request #124 from frp/master
Deal with Internationalized Domain Name in URI
This commit is contained in:
commit
9eed2bf2fa
1 changed files with 8 additions and 0 deletions
|
@ -7,6 +7,8 @@ import urllib2
|
||||||
import ctypes
|
import ctypes
|
||||||
import urllib
|
import urllib
|
||||||
|
|
||||||
|
from urlparse import urlparse, urlunparse
|
||||||
|
|
||||||
from anki.lang import _
|
from anki.lang import _
|
||||||
from aqt.qt import *
|
from aqt.qt import *
|
||||||
from anki.utils import stripHTML, isWin, isMac, namedtmp, json, stripHTMLMedia
|
from anki.utils import stripHTML, isWin, isMac, namedtmp, json, stripHTMLMedia
|
||||||
|
@ -837,6 +839,12 @@ to a cloze type first, via Edit>Change Note Type."""))
|
||||||
self.mw.progress.start(
|
self.mw.progress.start(
|
||||||
immediate=True, parent=self.parentWindow)
|
immediate=True, parent=self.parentWindow)
|
||||||
try:
|
try:
|
||||||
|
# urllib2 doesn't work properly with IRI
|
||||||
|
# The following code translates IRI to standard URI
|
||||||
|
scheme, netloc, path, params, query, fragment = urlparse(url)
|
||||||
|
idna_netloc = urllib2.unquote(netloc.encode("ascii")).decode("utf-8").encode("idna")
|
||||||
|
url = urlunparse([scheme, idna_netloc, path, params, query, fragment])
|
||||||
|
|
||||||
req = urllib2.Request(url, None, {
|
req = urllib2.Request(url, None, {
|
||||||
'User-Agent': 'Mozilla/5.0 (compatible; Anki)'})
|
'User-Agent': 'Mozilla/5.0 (compatible; Anki)'})
|
||||||
filecontents = urllib2.urlopen(req).read()
|
filecontents = urllib2.urlopen(req).read()
|
||||||
|
|
Loading…
Reference in a new issue