Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/15: Рейтинг темы: голосов - 15, средняя оценка - 4.80
В экстазе
 Аватар для wolfalone
168 / 152 / 38
Регистрация: 05.08.2012
Сообщений: 767
Записей в блоге: 3

Как определить кодировку html-страницы при скачивании?

21.08.2013, 17:55. Показов 3295. Ответов 2

Студворк — интернет-сервис помощи студентам
Доброго времени суток уважаемые!

Почитал аналогичные темы - не помогло.

Задача следующая:
1. Скачать страницу N
2. Проверить наличие в ней ссылки на страницу X

Основная проблема заключается в том, что вместо русских букв, в результате получаются unicode-символы (не декодированные). Подскажите пожалуйста, как решить данную проблему?

P.S. Основная загадка для меня остается в том, что результат выполнения последней строки - вполне себе читается в консоли, что Windows, что Linux...

Pyhon 3, code:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
# -*- coding: utf-8 -*-
import urllib
import urllib.request
 
url = "http://www.yandex.ru/"
source = urllib.request.urlopen(url).read()
 
f = open('file.html', 'w')
f.write(str(source))
f.close()
 
print (source)
print ('Привет мир!')
Добавлено через 1 минуту
P.S. Скачивать сам файл - нет необходимости, мне нужен только текст страницы в "читабельном" виде. Сохранение в файл - просто для примера.

Добавлено через 3 минуты
Скрин:
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
21.08.2013, 17:55
Ответы с готовыми решениями:

Как задать кодировку программно создаваемой html-страницы
в общем когда вывожу на печать через html выводит кракозябру, если я пиши не на английском private void saveFileDialog1_FileOk(object...

Как определить кодировку загруженной страницы?
При получении страници не верная кодировка. НИчего сделать не могу. Вот пример r =...

Как определить кодировку веб-страницы?
Написал парсер страниц. но некоторые страницы с русским текстом отображаются не правильно в textBox WebRequest request =...

2
561 / 484 / 168
Регистрация: 14.02.2012
Сообщений: 1,561
21.08.2013, 18:30
Есть несколько вариантов решения. Имхо, самый простой:
Python
1
2
3
4
5
from urllib.request import urlopen
fp = urlopen("http://google.com")
encoding = fp.headers.get_content_charset()
html = fp.read()
print(html.decode(encoding))
Проверено, работает
3
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
22.08.2013, 08:15
http://docs.python.org/3/libra... sponse.msg
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
22.08.2013, 08:15
Помогаю со студенческими работами здесь

Как определить кодировку страницы через HttpURLConnection?
как определить кодировку страницы через HttpURLConnection? пытаюсь коннектиться из явы к какому-то сайту, чтобы считать с него страницу....

Задать правильную кодировку для текста с html-страницы
Всем привет. Используя Grab загружаю страничку сайта http://my-shop.ru/shop/books/1340679.html далее получаю название книги через xpath...

Зависание recv при скачивании html
Здравствуйте, пытаюсь порциями по 7000 Б скачать HTML страницу. Сначала все идет нормально, но в самом конце функция просто виснет на ~1...

Зависание recv при скачивании html
Здравствуйте, пытаюсь порциями по 7000 Б скачать HTML страницу. Сначала все идет нормально, но в самом конце функция просто виснет на ~1...

Как определить кодировку при востановлении БД?
Необходимо востановить базу данных Есть дамп (см. атач), был получен не мною через mysqldump cкорее всего с дефолтными параметрами ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru