Я пытаюсь написать небольшой скребок в python, и я думаю, что столкнулся с проблемой кодирования. Я пытаюсь скрести http://www.resident-music.com/tickets (в частности таблицу на странице) - строка может выглядеть примерно так -£ отображение в urllib2 и Beautiful Soup
<tr>
<td style="width:64.9%;height:11px;">
<p><strong>the great escape 2017 local early bird tickets, selling fast</strong></p>
</td>
<td style="width:13.1%;height:11px;">
<p><strong>18<sup>th</sup>– 20<sup>th</sup> may</strong></p>
</td>
<td style="width:15.42%;height:11px;">
<p><strong>various</strong></p>
</td>
<td style="width:6.58%;height:11px;">
<p><strong>£55.00</strong></p>
</td>
</tr>
Я по существу пытается заменить £55.00
с £ 55, а также любые другие «не- текст "гадости.
Я пробовал несколько разных кодировок, которые вы можете использовать с beautifulsoup, и urllib2 - безрезультатно, я думаю, что я просто делаю все это неправильно.
Благодаря
Это не то, как вы хотите unescape html, это будет означать замену вызова для каждого экранированного объекта на странице, и сама начальная строка также может вызвать ошибку кодирования. Я также не буду поощрять использование BeautifulSoup3. –
Я уважаю ваш комментарий, но я не соглашусь с вами, если вы посмотрите здесь: https://wiki.python.org/moin/EscapingHtml вы увидите, что те готовые libs делают то же самое, что и я в одном с той разницей, что они дают вам готовые результаты, которые я лично не одобряю. В некоторых случаях они выполняют эту работу, но это была очень конкретная и легкая задача. Что касается 'bs3' вместо' bs4', действительно не имеет значения, что хочет сделать OP. Но опять же я уважаю ваше мнение! – coder
* Я по существу стараюсь заменить £ 55,00 на £ 55, ** и любые другие «нетекстовые» гадости. ***. * Другие «нетекстовые» гадости * - это экранированные объекты, которые могут быть любыми из множества. Также имеет значение, bs3 сломан и больше не поддерживается. –