Вот код, который я использую, чтобы просто найти на веб-сайте рестораны и цены на них.
def collect_dishes_list():
response = requests.get(url)
soup = BeautifulSoup(response.content, "html.parser")
restaurants = {}
restaurant_sections = soup.find_all("div", class_="lunch--inner")
for section in restaurant_sections:
restaurant_name = section.find("h3").text.strip()
dishes = []
dish_items = section.find_all("div", class_="single-offer--content")
price_items = section.find_all("div", class_="single-offer--price")
for dish_item, price_item in zip(dish_items, price_items):
dish_name = dish_item.find("p").text.strip()
price = price_item.find("p").text.strip()
name = f'{dish_name} :{price}'
dishes.append(name)
restaurants[restaurant_name] = dishes
return restaurants
for restaurant, dishes in collect_dishes_list().items():
dict_to_send = {}
dict_to_send[restaurant] = dishes
yaml_string = yaml.dump(dict_to_send, allow_unicode=True)
utf8_yaml_string = yaml_string.encode("utf-8")
payload = {
"text": utf8_yaml_string.decode()
}
print(payload)
Вывод такой:
{'text': 'Restaurant_Name:\n- Dish_Name_1 :Price_1\n- Dish_Name_2 :Price_2\n'}
Когда я хочу добавить пробел после двоеточия, например name = f'{dish_name} : {price}', тогда мой вывод заключается в одинарные кавычки, например
{'text': "Restaurant_Name:\n- 'Dish_Name_1 : Price_1'\n- 'Dish_Name_2 : Price_2'\n"}
Почему это происходит? Я бы хотел, чтобы перед и после запятой были пробелы.
Я пробовал использовать любые другие способы объединения строк, но ни один из них, похоже, не решил ситуацию:
dishes.append(f"{dish_name} : {price}")
price = " " + price_item.find("p").text.strip()
dishes.append(f"{dish_name} :{price}")
price = price_item.find("p").text.strip()
dishes.append(" : ".join([dish_name, price]))
Подробнее здесь: https://stackoverflow.com/questions/782 ... a-string-j
Почему Python добавляет кавычки, когда я добавляю пробел после запятой в соединении строк? ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
С++ ручная конкатенация функции c-строк, которая вызывается дважды и добавляет пробел
Anonymous » » в форуме C++ - 0 Ответы
- 10 Просмотры
-
Последнее сообщение Anonymous
-