2013-08-31 3 views
0

Я пишу скрипт python, который будет извлекать URL-адрес видео в facebook. Но в источнике видеостраницы я вижу некоторые символы формы \ uxxxxxx в URL-адресе.конвертировать Юникод формы " uxxxxxx" в строку или текст

, например, URL-адрес в этой форме

https\u00253A\u00255C\u00252F\u00255C\u00252Ffbcdn-video-a.akamaihd.net\u00255C\u00252Fhvideo-ak-prn2\u00255C\u00252Fv\u00255C\u00252F753002_318048581647953_53890_n.mp4\u00253Foh\u00253D64e3e8ecf7e88f1da335d88949b2dc1f\u002526oe\u00253D52226D10\u002526__gda__\u00253D1377987338_9e37fb163a1d37d4b06ab7cff668f7dc\u002522\u00252C\u002522 

\ u00253A является двоеточие (:), но как я преобразовать его.

Когда я сделал, как

>>> x.decode('unicode_escape').encode('ascii','ignore') 

я получить

'https%3A%5C%2F%5C%2Ffbcdn-video-a.akamaihd.net%5C%2Fhvideo-ak-prn2%5C%2Fv%5C%2F753002_318048581647953_53890_n.mp4%3Foh%3D64e3e8ecf7e88f1da335d88949b2dc1f%26oe%3D52226D10%26__gda__%3D1377987338_9e37fb163a1d37d4b06ab7cff668f7dc%22%2C%22 

Я хочу, чтобы точный адрес не в процентах.

Я много искал, но не нашел никакой помощи.

Заранее спасибо

Edit

Есть ли способ, если я прохожу весь источник facebook страницы, а затем конвертировать весь такой сложный юникод характер простой.

+0

Это странная двойная экранированная строка. –

+0

@mechanical не только URL, но большая часть его присутствует в javascript. Например, проверьте источник https://www.facebook.com/photo.php?v=10102527792694996. Нажмите CTRL + F и найдите «.mp4» – vaibhav1312

ответ

2
>>> import urllib 
>>> s = b'https\u00253A\u00255C\u00252F\u00255C\u00252Ffbcdn-video' 
>>> print urllib.unquote_plus(s.decode('unicode_escape')) 
https:\/\/fbcdn-video 

Кажется, что ваша строка обратно сбрасывается.

>>> import re 
>>> import urllib 
>>> s = b'https\u00253A\u00255C\u00252F\u00255C\u00252Ffbcdn-video' 
>>> re.sub(r'\\(.)', r'\1', urllib.unquote_plus(s.decode('unicode_escape'))) 
u'https://fbcdn-video' 
+0

да, но я хочу изменить его точный url, который напечатал в строке url – vaibhav1312

+0

@ vaibhav1312 обновлен. –

+0

Есть ли метод в любой библиотеке в python, в которой я могу передать весь источник и преобразовать его в обычную строку или текст – vaibhav1312

Смежные вопросы