Как очистить HTML-теги после очистки с помощью BS4 - PullRequest
0 голосов
/ 04 июля 2018

Создание супер базового скрипта на Python для получения данных о ценах от Etsy. Я знаю, что код некрасив (любые полезные советы приветствуются), но он делает именно то, что мне нужно.

Мой единственный вопрос: есть ли простой, чистый способ получить только $ 305,00 + без связанных тегов HTML? Может быть, мне нужно некоторое регулярное выражение - но я чувствую, что должен быть более чистый способ, или лучший пакет для использования или что-то в этом роде ... Я также видел раньше 'find_element_by_class', но я думаю, что он использует Selenium, и он намного медленнее.

from urllib.request import urlopen
from bs4 import BeautifulSoup

weblink = 'https://www.etsy.com/listing/567269694/saw-blade-gyuto-japanese-style-chef?ga_order=most_relevant&ga_search_type=all&ga_view_type=gallery&ga_search_query=chef%20knife&ref=sr_gallery-1-17'

def grabData(url):
    res = urlopen(url)
    soup = BeautifulSoup(res, "html.parser")

    price = soup.find('span', attrs={'id': 'listing-price'})
    print(price)

if __name__ == '__main__':
    grabData(weblink)

Выход:

<span class="vertical-align-middle " id="listing-price">
                        $305.00+

                <meta content="USD" itemprop="currency"/>
<meta content="305.00" itemprop="price"/>
<meta content="in_stock" itemprop="availability"/>
</span>

Неважно, я решил это. Все, что вам нужно сделать, это добавить .text в конец.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...