Задать вопрос
@ParnishkaSPB

(Python)Как парсить сайт, если URL на русском языке?

Нужно спарсить сайт(Python), но URL у него на русском языке, что в последствии не дает дальше пройти на сам сайт. Как это сделать?
  • Вопрос задан
  • 221 просмотр
Подписаться 2 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
  • Skillfactory
    Профессия Python-разработчик
    9 месяцев
    Далее
  • SF Education
    Бэкенд-разработчик на Python
    3 месяца
    Далее
Решения вопроса 1
NeiroNx
@NeiroNx
Программист
Имя хоста кодируется в idna
>>> u'сайт.рф'.encode('idna')
b'xn--80aswg.xn--p1ai'
>>> b'xn--80aswg.xn--p1ai'.decode('idna')
'сайт.рф'


from urllib.parse import urlparse,ParseResult,quote
u = urlparse("http://сайт.рф/тест/тест2")
encoded_url=ParseResult(u.scheme,u.netloc.encode('idna').decode('ascii'),quote(u.path),u.params,u.query,u.fragment).geturl()
>>> 'http://xn--80aswg.xn--p1ai/%D1%82%D0%B5%D1%81%D1%82/%D1%82%D0%B5%D1%81%D1%822'
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы