Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » Python для новичков
  • » Почему отображаются лишние слеши в коде страницы? Из-за этого не могу найти div c нужным class через BeautifulSoup [RSS Feed]

#1 Март 28, 2023 10:40:01

xam1816
Зарегистрирован: 2020-05-11
Сообщения: 1352
Репутация: +  118  -
Профиль   Отправить e-mail  

Почему отображаются лишние слеши в коде страницы? Из-за этого не могу найти div c нужным class через BeautifulSoup

Скинь ссылку на сайт, и напиши что нужно получить

Офлайн

#2 Март 28, 2023 11:43:48

Klakk
Зарегистрирован: 2022-02-18
Сообщения: 11
Репутация: +  0  -
Профиль   Отправить e-mail  

Почему отображаются лишние слеши в коде страницы? Из-за этого не могу найти div c нужным class через BeautifulSoup

py.user.next
Ты преобразовал текст?
Да, конечно:
 found = []
url = f'https://.........'
r = work.get(url, headers=headers).text
m = re.search('null, null, \"(.+?)\", null', r)
if m:
    found = m.group(1)
list = 'div class=\"hook-details1679980270 hook-details\">\n    <title>#7159581 Строительная заявка<\/title>\n\n    <div class=\"agg-details__header sticky opaque\">\n '
print(found[1:-511368])
print(repr(found[1:-511368]))
print(repr(list))
print(list)

Офлайн

#3 Март 28, 2023 12:31:44

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9863
Репутация: +  853  -
Профиль   Отправить e-mail  

Почему отображаются лишние слеши в коде страницы? Из-за этого не могу найти div c нужным class через BeautifulSoup

Klakk
Да, конечно:
Где?

Вот это проделай с found
https://python.su/forum/post/227336/



Отредактировано py.user.next (Март 28, 2023 12:32:45)

Офлайн

#4 Март 28, 2023 14:21:26

Klakk
Зарегистрирован: 2022-02-18
Сообщения: 11
Репутация: +  0  -
Профиль   Отправить e-mail  

Почему отображаются лишние слеши в коде страницы? Из-за этого не могу найти div c нужным class через BeautifulSoup

py.user.next
Вот это проделай с found
https://python.su/forum/post/227336/
Сделал. все получилось. Спасибо! Только добавил еще пару слешей
 newtext2 = newtext1.replace('\\\\n', '\n')

Но я так и не понял почему пришлось действовать через repr

Офлайн

#5 Март 28, 2023 23:35:55

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9863
Репутация: +  853  -
Профиль   Отправить e-mail  

Почему отображаются лишние слеши в коде страницы? Из-за этого не могу найти div c нужным class через BeautifulSoup

Klakk
Только добавил еще пару слешей
Не надо добавлять бэкслеши, ты должен убрать repr(). repr() я сказал тебе сделать, чтобы мне было видно на форуме, какие невидимые символы есть в строке, потому что repr() все невидимые символы делает видимыми.
Klakk
Но я так и не понял почему пришлось действовать через repr
repr() нужен для анализа строки здесь на форуме, потому что сам ты объяснить не сможешь, какие символы там есть и каких нет, так как ты ничего не знаешь про символы.

Вот ты писал код
Klakk
  
found = []
url = f'https://.........'
r = work.get(url, headers=headers).text
m = re.search('null, null, \"(.+?)\", null', r)
if m:
    found = m.group(1)
list = 'div class=\"hook-details1679980270 hook-details\">\n    <title>#7159581 Строительная заявка<\/title>\n\n    <div class=\"agg-details__header sticky opaque\">\n '
print(found[1:-511368])
print(repr(found[1:-511368]))
print(repr(list))
print(list)
Надо его сделать вот таким
  
found = []
url = f'https://.........'
r = work.get(url, headers=headers).text
m = re.search('null, null, \"(.+?)\", null', r)
if m:
    found = m.group(1)
text = found[1:-511368]
И к нему добавить замены через .replace() с одним бэкслешем везде, как я писал изначально.



Отредактировано py.user.next (Март 28, 2023 23:41:31)

Офлайн

#6 Апрель 7, 2023 22:24:03

Klakk
Зарегистрирован: 2022-02-18
Сообщения: 11
Репутация: +  0  -
Профиль   Отправить e-mail  

Почему отображаются лишние слеши в коде страницы? Из-за этого не могу найти div c нужным class через BeautifulSoup

py.user.next
И к нему добавить замены через .replace() с одним бэкслешем везде, как я писал изначально.
Спасибо. Работает.

Офлайн

  • Начало
  • » Python для новичков
  • » Почему отображаются лишние слеши в коде страницы? Из-за этого не могу найти div c нужным class через BeautifulSoup[RSS Feed]

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version