Answer the question
In order to leave comments, you need to log in
A large bunch of spaces when parsing html tables, how to get rid of?
I'm sitting on a scab site, I almost came to the end, and when parsing, the elements from the n column under the td tag are parsed with a bunch of spaces, is there any way to get rid of them?
The code:
import requests
from bs4 import BeautifulSoup as BS
s = requests.Session()
auth_html = s.get()
auth_bs = BS(auth_html.content, "html.parser")
csrf = auth_bs.select("meta[name=csrf-token]")[0]["content"]
payload = {
"_token": csrf,
"email": "",
"password": ""
}
answ = s.post("", data = payload)
for i in range(1, 37): # pagenation
parse = s.get(f"")
soup = BS(parse.content, "lxml")
items = soup.find_all(class_="clickable-row")
for i in items:
item = i.find_all_next("td")
if item[6].parent.find(class_="editMarketplaceCategoryBlock") == None:
print("""ID: {}
Каталог: {}
Название категории: {}
Родители категории: {}
Связь с категорией маркетплейса: {}\n""".format(item[2].text.strip(),
item[3].text.strip(),
item[4].text.strip(),
item[5].text.replace("\n", "").replace(" ", ""),
"Не заполнено"))
else:
print("""ID: {}
Каталог: {}
Название категории: {}
Родители категории: {}
Связь с категорией маркетплейса: {}\n""".format(item[2].text.strip(),
item[3].text.strip(),
item[4].text.strip(),
item[5].text.replace("\n", ""),
item[6].parent.find(class_="editMarketplaceCategoryBlock").text.replace("\n", "").replace(" ", "")))
break
ID: 3
Каталог: Самсон
Название категории: Бумага белая марок А, В, С
Родители категории: Офис / Бумага для офисной техники
Answer the question
In order to leave comments, you need to log in
import re
data = '''ID: 3
Каталог: Самсон
Название категории: Бумага белая марок А, В, С
Родители категории: Офис / '''
out = re.sub(' +', ' ', data)
print(out)
#ID: 3
# Каталог: Самсон
# Название категории: Бумага белая марок А, В, С
# Родители категории: Офис /
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question