Система. Текст. Кодирование. GetEncoding (“iso-8859-1”) бросает PlatformNotSupportedException?

Вы можете использовать BeautifulSoup! Сначала дайте идентификатор тегу вашего скрипта (например, myscrypt1 ), а затем получите контент с помощью метода find BeautifulSoup.

import requests
from bs4 import BeautifulSoup
response = requests.get(my_url)
soup = BeautifulSoup(response.text)
soup.find(id="myscrypt1")
14
задан 29 December 2008 в 20:50
поделиться

3 ответа

Я попытался бы использовать "окна 1252" в качестве кодирующий строку. Согласно Википедии, Windows 1252 является надмножеством ISO-8859-1.

System.Text.Encoding.GetEncoding(1252)
15
ответ дан 1 December 2019 в 10:19
поделиться

В этой статье MSDN говорится:

.NET Компактная кодировка символов Поддержки платформы на всех устройствах: Unicode (БЫТЬ и LE), UTF8, UTF7 и ASCII.

Там ограничен поддержка кодирования кодовой страницы и только если кодирование распознано операционной системой устройства.

Компактная Платформа.NET бросает PlatformNotSupportedException, если необходимое кодирование не доступно на устройстве.

Я полагаю, что все (или по крайней мере многие) кодировки ISO являются кодировкой кодовой страницы и подпадают под "ограниченную поддержку" правило. UTF8 является, вероятно, Вашим лучшим выбором как заменой.

7
ответ дан 1 December 2019 в 10:19
поделиться

Это нечетно, что 8859-1 не поддерживается, но это сказало, UTF-8 действительно имеет способность представить все этот 8859-1 символ (и больше), так есть ли причина, Вы не можете просто использовать UTF-8 вместо этого? Это - то, что мы делаем внутренне, и я просто занимался почти этой той же проблемой сегодня. Плюс сторона использования UTF-8 то, что Вы получаете поддержку дальневосточных и кириллических языков, не делая модификации и не добавляя вес к западным языкам.

0
ответ дан 1 December 2019 в 10:19
поделиться
Другие вопросы по тегам:

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